Animation MIDlet 2 : Animation « J2ME « Java






Animation MIDlet 2

Animation MIDlet 2

/*
J2ME in a Nutshell
By Kim Topley
ISBN: 0-596-00253-X

*/


import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;

public class AnimationMIDlet2 extends AnimationMIDlet {

    // Create an AnimationCanvas2
    protected AnimationMIDlet.AnimationCanvas createAnimationCanvas() {
        return new AnimationCanvas2();
    }
    
    class AnimationCanvas2 extends AnimationMIDlet.AnimationCanvas {

        // Override superclass paint method to take
        // into account the clipping rectangle
        protected void paint(Graphics g) {
            // Get the clipping rectange
            int clipX = g.getClipX();
            int clipY = g.getClipY();
            int clipWidth = g.getClipWidth();
            int clipHeight = g.getClipHeight();
            
            // Paint with the background color - only
            // the area within the clipping rectangle
            g.setColor(background);
            g.fillRect(clipX, clipY, clipWidth, clipHeight);
            
            // Draw all of the blocks
            g.setColor(foreground);
            synchronized (this) {
                for (int i = 0, count = blocks.length; i < count; i++) {
                    g.fillRect(blocks[i].x, blocks[i].y, SIZE, SIZE);
                }
            }
        }       
                
        // Called on expiry of timer.
        public synchronized void moveAllBlocks() {
            // Update the positions and speeds
            // of all of the blocks and repaint
            // only the part of the screen that
            // they occupy
            for (int i = 0, count = blocks.length; i < count; i++) {
                // Request a repaint of the current location
                Block block = blocks[i];
                repaint(block.x, block.y, SIZE, SIZE);
                
                blocks[i].move();
                
                // Request a repaint of the new location
                repaint(block.x, block.y, SIZE, SIZE);
            }
        }
    }
}


           
       








Related examples in the same category

1.Animation MIDlet Animation MIDlet
2.Animated TimerAnimated Timer
3.SweepSweep
4.Timer and animationTimer and animation
5.A simple Photo and Animation AlbumA simple Photo and Animation Album
6.Demonstrate simple animation using a Timer and TimerTaskDemonstrate simple animation using a Timer and TimerTask
7.A MIDlet that displays the Doggy animation.