📄 mycanvas.java
字号:
import java.io.IOException;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
public class MyCanvas extends Canvas {
Image start,back,help,score;
int y=60;
//int action=0;
MenuCanvas gc;
private Display dis;
NewGame newGame;
ScoreGame scoreGame;
AboutGame aboutGame;
Display display;
public MyCanvas(Display disp, MenuCanvas canvas) {
dis=disp;
gc=canvas;
newGame=new NewGame(dis,this);
scoreGame=new ScoreGame(dis,this);
aboutGame=new AboutGame(dis,this);
try {
start=Image.createImage("/start.png");
back=Image.createImage("/back.png");
help=Image.createImage("/help.png");
score=Image.createImage("/score.png");
} catch (IOException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
// TODO 自动生成构造函数存根
}
protected void paint(Graphics g) {
// TODO 自动生成方法存根
g.setColor(255,255,255);
g.fillRect(0,0,getWidth(),getHeight());
//if(action==0){
drawMenu(g);
/*}else if(action==1){
drawGame(g);
}else if(action==2){
drawScore(g);
}else if(action==3){
drawHelp(g);
}
*/
}
private void drawMenu(Graphics g) {
// TODO 自动生成方法存根
g.drawImage(start,0,0,Graphics.TOP|Graphics.LEFT);
g.setColor(255,250,250);
g.drawRect(100,y,35,15);
g.drawString("新游戏",100,60,Graphics.TOP|Graphics.LEFT);
g.drawString("高分榜",100,80,Graphics.TOP|Graphics.LEFT);
g.drawString("帮 助",100,100,Graphics.TOP|Graphics.LEFT);
g.drawString("退 出",100,120,Graphics.TOP|Graphics.LEFT);
}
/*private void drawScore(Graphics g) {
// TODO 自动生成方法存根
g.drawImage(score,0,0,Graphics.TOP |Graphics.LEFT);
}
private void drawHelp(Graphics g) {
// TODO 自动生成方法存根
g.drawImage(help,0,0,Graphics.TOP |Graphics.LEFT);
}
private void drawGame(Graphics g) {
// TODO 自动生成方法存根
g.setColor(0,0,255);
}
*/
protected void keyPressed(int keyCode){
//if(action==0){
if(keyCode==50 || keyCode==-1){
if(y==60){
y=120;
}else{
y=y-20;
}
}else if(keyCode==56 || keyCode==-2){
if(y==120){
y=60;
}else {
y=y+20;
}
}else if(keyCode==53||keyCode==-5){
if(y==120){
gc.exit();
}else if(y==100){
dis.setCurrent(aboutGame);
}else if(y==80){
dis.setCurrent(scoreGame);
}else if(y==60){
dis.setCurrent(newGame);
}
}
//}else{
//action=0;
//}
repaint();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -