mycanvas.java

来自「Java ME手机应用开发大全一书的配套光盘上的源码」· Java 代码 · 共 64 行

JAVA
64
字号
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.game.GameCanvas;
import javax.microedition.lcdui.game.LayerManager;
import javax.microedition.lcdui.game.Sprite;

public class MyCanvas extends GameCanvas implements Runnable
{
	private Graphics g;
	private Sprite sprite;
	private Image image;
	
	
	protected MyCanvas(boolean arg0) 
	{
		super(arg0);
		try 
		{
			//加载Sprite的源图像
			image = Image.createImage("/fly.png");
			//根据给定的高度和宽度创建精灵
			sprite = new Sprite(image,115,43);
			g = this.getGraphics();
			//定义帧序列数组
			int[] FRAME_SEQUENCE={0,1,2,1,0,1,2,1,0,1,2,1,1,1,1,1,1};
			//将帧序列数组添加到精灵的属性中去
			sprite.setFrameSequence(FRAME_SEQUENCE);
			//设置精灵在屏幕的中央显示
			int x=(this.getWidth()-sprite.getWidth())/2;
			int y=(this.getHeight()-sprite.getHeight())/2;
			sprite.setPosition(x,y);
		} 
		catch (Exception e) 
		{
			e.printStackTrace();
		}
		
	}
	
	public void run()
	{
		while(true)
		{
			//逐一显示各帧
		    sprite.nextFrame();
			//绘制精灵
			sprite.paint(g);
			//将缓冲区的内容绘制到屏幕中去
			flushGraphics();
			try 
				{
					//各帧之间显示的间隔时间
					Thread.sleep(200);
				} 
				catch (InterruptedException e) 
				{
					e.printStackTrace();
				}

		}	
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?