mycanvas.java

来自「J2ME 无线通信技术应用开发源代码」· Java 代码 · 共 47 行

JAVA
47
字号
// 程序名MyCanvas.java
// 测试可变图象
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.util.Random;

public class MyCanvas extends Canvas {
  private UI_Low6 midlet;
  private Image image;
  private Graphics g;
  private Random colorRandom;

  public MyCanvas( UI_Low6 midlet ){
    this.midlet = midlet;
    colorRandom = new Random(0x00FFFFFF);
//生成一个可变图象,并初始化这个图象
    image = Image.createImage(80,70);
    g = image.getGraphics();//获取Graphics对象
    int w = g.getClipWidth();
    int h = g.getClipHeight();
    g.setColor(0xFFFFFF);
    g.fillRect(0,0,w,h);
    g.setColor(0xFF0000);
    g.fillRect(w/4,h/4,w/2,h/2);
  } 
 
  protected void paint( Graphics g ){
    //刷新整个屏幕为黑色,然后绘制这个可变图象,位置为画布正中央。
    g.setColor(0x000000);
    g.fillRect( 0, 0, getWidth(), getHeight());
    //image = Image.createImage(image);
    g.drawImage(image, getWidth()/2, getHeight()/2,g.VCENTER | g.HCENTER );
  }
  
  protected void keyPressed(int keyCode) {
    //在按键事件里也可调用这个Graphics对象
    if (getGameAction(keyCode) == FIRE ) {
      int w = g.getClipWidth();
      int h = g.getClipHeight();
      g.setColor(colorRandom.nextInt());//设置一个随机颜色
      g.fillRect(0,0,w,h);
      g.setColor(colorRandom.nextInt());//设置一个随机颜色
      g.fillRect(w/4,h/4,w/2,h/2);
      repaint();
    }
  }
}

⌨️ 快捷键说明

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