CalcCanvas.java~2~
上传用户:hmzjsh
上传日期:2009-12-31
资源大小:5k
文件大小:2k
源码类别:

J2ME

开发平台:

Java

  1. package my.calc;
  2. import com.nokia.mid.ui.FullCanvas;
  3. import javax.microedition.lcdui.*;
  4. import java.io.*;
  5. public class CalcCanvas extends FullCanvas{
  6.   /**退出按钮*/
  7.   private Command cmdExit;
  8.   /**标题*/
  9.   private String title = "Calculator";
  10.   /**字体*/
  11.   private Font f;
  12.   /**显示的数字*/
  13.   private int result = 0;
  14.   /**焦点编号*/
  15.   private int num = 0;
  16.   /**图片起点坐标*/
  17.   private int x = 20;
  18.   private int y = 70;
  19.   /**按钮尺寸*/
  20.   private int buttonWidth = 38;
  21.   private int buttonHeight = 28;
  22.   /**图片文件*/
  23.   private Image image = null;
  24.   /**默认构造方法*/
  25.   public CalcCanvas() {
  26.     try{
  27.       image = Image.createImage("/calc.png");
  28.       System.out.println(x);
  29.     }catch(IOException e){
  30.       //ignore
  31.       System.out.println(e);
  32.     }
  33.   }
  34.   /**
  35.    * 绘制
  36.    * @param g 图形对象
  37.    */
  38.   public void paint(Graphics g) {
  39.     f = g.getFont();
  40.     //绘制标题
  41.     g.drawString(title,getWidth() / 2,f.getHeight() / 2,Graphics.TOP|Graphics.HCENTER);
  42.     //绘制文本框
  43.     g.drawRect(3,24,172,20);
  44.     //绘制数字
  45.     String temp = Integer.toString(result);
  46.     g.drawString(temp,getWidth() - temp.length() / 2 - 3,30,Graphics.TOP|Graphics.RIGHT);
  47.     //绘制面板
  48.     g.drawImage(image,2,50,Graphics.TOP|Graphics.LEFT);
  49.   }
  50.   /**
  51.    * 事件处理
  52.    * @param keyCode 按钮值
  53.    */
  54.   public void keyPressed(int keyCode){
  55.     String keyName = getKeyName(keyCode);
  56.     System.out.println(keyName);
  57.   }
  58.   /**
  59.    * 绘制焦点矩形
  60.    * @param g 图形对象
  61.    * @param x X坐标
  62.    * @param y Y坐标
  63.    */
  64.   public void drawFoucs(Graphics g,int x,int y){
  65.   }
  66. }