⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 movecanvas.java

📁 一个简单的J2ME程序键盘控制功能
💻 JAVA
字号:
package examples.ch6;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;


public class MoveCanvas extends Canvas{
	
	private MoveCanvasMIDlet midlet;
	private MoveObj moveObj;
	
	public MoveCanvas(MoveCanvasMIDlet midlet){
		this.midlet=midlet;
		moveObj=new MoveObj();
		moveObj.changeVelocity(3);
		moveObj.MoveObjAt(getWidth()/2,getHeight()/2);
	}
protected void paint(Graphics g){
	g.setColor(0,255,0);
	g.fillRect(0,0,getWidth(),getHeight());
	g.setColor(255,0,0);
	moveObj.paint(g);
	
}

protected void keyPressed(int keyCode){
		
	switch(getGameAction(keyCode))
	{
		case UP:
		{
			moveObj.goUp();
			repaint();
			break;
		}
		case DOWN:
		{
			moveObj.goDown();
			repaint();
			break;
		}
		case LEFT:
		{
			moveObj.goLeft();
			repaint();
			break;
		}
		case RIGHT:
		{
			moveObj.goRight();
			repaint();
			break;
		}
		default:{
			midlet.exit();
		}
	}
	}


}


class MoveObj{
	private int x,y;
	private int velocity;
	
	MoveObj(){
		x=0;
		y=0;
		velocity=1;
		
	}
	
	public void changeVelocity(int v){
		if((v>=0)&(v<10)){
			velocity=v;
		}
	}
	
	public void MoveObjAt(int x,int y){
		this.x=x;
		this.y=y;
	}
	public  void goUp()
	{
		y-=velocity;
	}
	
	public  void goDown()
	{
		y+=velocity;
	}
	public  void goLeft()
	{
		x-=velocity;
	}
	public  void goRight()
	{
		x+=velocity;
	}
	public void paint(Graphics g){
		g.translate(x-g.getTranslateX(),y-g.getTranslateY());
		int previousColor=g.getColor();
		g.setColor(0x00000000);
		g.fillRect(2,2,22,22);
		g.setColor(0x00FF0000);
		g.fillRect(0,0,20,20);
		g.setColor(previousColor);
		g.translate(x-g.getTranslateX(),y-g.getTranslateY());
		
	}
	
}

⌨️ 快捷键说明

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