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

📄 gamecanvas.java

📁 j2me的框架~~本人在学习中总结出来的
💻 JAVA
字号:

import javax.microedition.lcdui.*;



public class GameCanvas extends Canvas implements Runnable,CommandListener{
	
	static short state=1;//游戏关卡
	
	static short gameState=1;//游戏状态
	static final short PLAYING=1;//游戏正常运行状态
	static final short GAMEPAUSE=2;//游戏暂停状态
	static final short GAMEOVER=3;//游戏结束状态
	static final short STATEOVER=4;//游戏过关状态
	
	static final short MENUING=5;//外菜单状态
	static final short HELPING=6;//帮助状态
	static final short PLAYINGMENU=7;//内菜单状态
	static final short GAMESET=8;//游戏设置状态
	static final short GAMEWIN=9;//游戏胜利状态
	static final int ERASE_COLOUR=0x00ffffff;//白
	static final int DRAW_COLOUR=0x00000000;//黑
	
	private int mx,my;//屏宽和高
	
	Image offscreen;//缓冲屏
	Graphics offg;//画笔
	
	public GameCanvas(){
		
		mx=this.getWidth();
		my=this.getHeight();
		
		InitGame(); //游戏初始化
		
		try{
		offscreen=Image.createImage(mx,my);
		offg=offscreen.getGraphics();
		Thread mt=new Thread(this);
		mt.start();
		
		}
		catch(Exception e){
			
			e.printStackTrace();
		}
		
		this.setCommandListener(this);
		
	}
	
	public void paint(Graphics g){
		
	
		g.setColor(ERASE_COLOUR);
		g.fillRect(0, 0, mx, my);
		g.drawImage(offscreen, 0, 0, Graphics.TOP|Graphics.LEFT);
		
	}
	
	public void run(){
		
		while(true){
			
			
			
			
			{
				
				switch(gameState){
				
				
				   case PLAYING:


					//关卡   
					   switch(state){
					     
					   
					      case 1:  
					    	  
					   }
					   
					   break;
					   
				   case GAMEPAUSE:
					   
					   break;	
					   
				   case GAMEOVER:
					   
					   break;
					   
				   case MENUING:
					   
					   break;	
					   
				   case HELPING:
					   
					   break;	
					   
				   case PLAYINGMENU:
					   
					   break;	
					   
				   case GAMESET:
					   
					   break;
					   
				   case GAMEWIN:
					
					   break;	
				
				}				
			}
			
			try{
				
				repaint();
				Thread.sleep(100);
				
			}catch(Exception ex){}
			
		}
		
		
	}
	
	
	public void InitGame(){
		
		
		
	}

	
	//按下按键
	public void keyPressed(int keyCode){
		
		switch(gameState){
		
		
		   case PLAYING:


			//关卡   
			   switch(state){
			     
			   
			      case 1:  
			    	  
			   }
			   
			   break;
			   
		   case GAMEPAUSE:
			   
			   break;	
			   
		   case GAMEOVER:
			   
			   break;
			   
		   case MENUING:
			   
			   break;	
			   
		   case HELPING:
			   
			   break;	
			   
		   case PLAYINGMENU:
			   
			   break;	
			   
		   case GAMESET:
			   
			   break;
			   
		   case GAMEWIN:
			
			   break;	
		
		}
		
		
		
	}

	//释放按键
	public void keyReleased(){
		
		switch(gameState){
		
		
		   case PLAYING:


		    //关卡   
		       switch(state){
				     
				   
				  case 1:  
				    	  
			   }
			   break;
			   
		   case GAMEPAUSE:
			   
			   break;	
			   
		   case GAMEOVER:
			   
			   break;
			   
		   case MENUING:
			   
			   break;	
			   
		   case HELPING:
			   
			   break;	
			   
		   case PLAYINGMENU:
			   
			   break;	
			   
		   case GAMESET:
			   
			   break;
			   
		   case GAMEWIN:
			
			   break;	
		
		}
		
		
		
	}		
		
	

	public void commandAction(Command c,Displayable s){

		switch(gameState){
		
		
		   case PLAYING:


		    //关卡   
		       switch(state){
				     
				   
				  case 1:  
				    	  
			   }
			   break;
			   
		   case GAMEPAUSE:
			   
			   break;	
			   
		   case GAMEOVER:
			   
			   break;
			   
		   case MENUING:
			   
			   break;	
			   
		   case HELPING:
			   
			   break;	
			   
		   case PLAYINGMENU:
			   
			   break;	
			   
		   case GAMESET:
			   
			   break;
			   
		   case GAMEWIN:
			
			   break;	
		
		}
		

		
		
	}

}

⌨️ 快捷键说明

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