📄 bqcanvas.java
字号:
/*
* Created on 2005-9-20 by pcy
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
package a.a.a.midp.lcdui;
import javax.microedition.lcdui.*;
import a.a.a.b.*;
import java.awt.image.*;
public class BQCanvas extends BQDisplayable {
public static final long serialVersionUID=1;
protected Image screenImage;
public BQCanvas() {
super();
resizeScreen();
}
public boolean isDoubleBuffered() {
return true;
}
public int getGameAction(int keyCode) {
if(keyCode==e.KEY_SOFT1){
return 0;
}else if(keyCode==e.KEY_SOFT2){
return 0;
}else if(keyCode==e.KEY_UP){
return Canvas.UP;
}else if(keyCode==e.KEY_DOWN){
return Canvas.DOWN;
}else if(keyCode==e.KEY_LEFT){
return Canvas.LEFT;
}else if(keyCode==e.KEY_RIGHT){
return Canvas.RIGHT;
}else if(keyCode==e.KEY_SELECT){
return Canvas.FIRE;
}
switch (keyCode) {
case Canvas.KEY_NUM0:
return 0;
case Canvas.KEY_NUM1:
return Canvas.GAME_A;
case Canvas.KEY_NUM2:
return Canvas.UP;
case Canvas.KEY_NUM3:
return Canvas.GAME_B;
case Canvas.KEY_NUM4:
return Canvas.LEFT;
case Canvas.KEY_NUM5:
return Canvas.FIRE;
case Canvas.KEY_NUM6:
return Canvas.RIGHT;
case Canvas.KEY_NUM7:
return Canvas.GAME_C;
case Canvas.KEY_NUM8:
return Canvas.DOWN;
case Canvas.KEY_NUM9:
return Canvas.GAME_D;
case Canvas.KEY_STAR:
return 0;
case Canvas.KEY_POUND:
return 0;
default:
//throw new IllegalArgumentException();
return 0;
}
}
public int getKeyCode(int gameAction) {
switch (gameAction) {
case Canvas.UP:
return e.KEY_UP;
case Canvas.DOWN:
return e.KEY_DOWN;
case Canvas.LEFT:
return e.KEY_LEFT;
case Canvas.RIGHT:
return e.KEY_RIGHT;
case Canvas.FIRE:
return e.KEY_SELECT;
case Canvas.GAME_A:
return Canvas.KEY_NUM1;
case Canvas.GAME_B:
return Canvas.KEY_NUM3;
case Canvas.GAME_C:
return Canvas.KEY_NUM7;
case Canvas.GAME_D:
return Canvas.KEY_NUM9;
default:
throw new IllegalArgumentException();
}
}
public String getKeyName(int keyCode) {
if(keyCode==e.KEY_SOFT1){
return "SOFT1";
}else if(keyCode==e.KEY_SOFT2){
return "SOFT2";
}else if(keyCode==e.KEY_UP){
return "UP";
}else if(keyCode==e.KEY_DOWN){
return "DOWN";
}else if(keyCode==e.KEY_LEFT){
return "LEFT";
}else if(keyCode==e.KEY_RIGHT){
return "RIGHT";
}else if(keyCode==e.KEY_SELECT){
return "FIRE";
}
switch (keyCode) {
case Canvas.KEY_NUM0:
return "0";
case Canvas.KEY_NUM1:
return "1";
case Canvas.KEY_NUM2:
return "2";
case Canvas.KEY_NUM3:
return "3";
case Canvas.KEY_NUM4:
return "4";
case Canvas.KEY_NUM5:
return "5";
case Canvas.KEY_NUM6:
return "6";
case Canvas.KEY_NUM7:
return "7";
case Canvas.KEY_NUM8:
return "8";
case Canvas.KEY_NUM9:
return "9";
case Canvas.KEY_STAR:
return "STAR";
case Canvas.KEY_POUND:
return "POUND";
default:
return "";
}
}
public boolean hasPointerEvents() {
return e.getInstance(null).hasPointerEvent();
}
public boolean hasPointerMotionEvents() {
return e.getInstance(null).hasPointerEvent();
}
public boolean hasRepeatEvents() {
return e.getInstance(null).hasRepeatEvents();
}
public final void repaintBQCanvas() {
((BQScreenCanvas)screenPanel).updateImage(screenImage.getBQImage().getTrueImage());
}
public final void repaintBQCanvas(int x, int y, int w, int h) {
((BQScreenCanvas)screenPanel).updateImage(screenImage.getBQImage().getTrueImage(),
x,y,w,h);
}
public final void serviceRepaints() {
}
public Graphics getPaintGraphics(){
return screenImage.getGraphics();
}
public BufferedImage getScreenImage(){
return ((BQScreenCanvas)screenPanel).getScreenImage();
}
public void resizeScreen(){
super.resizeScreen();
int w=e.getInstance(null).getScreenWidth();
int h=e.getInstance(null).getScreenHeight();
screenImage=null;
screenImage=Image.createImage(w,h);
if(shell!=null){
((Canvas)shell).repaint();
}
System.gc();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -