?? watchcanvas.java
字號:
package com.j2medev.chapter3;
import javax.microedition.lcdui.*;
public class WatchCanvas extends Canvas implements Runnable{
int degree = 360;
long startTime;
int seconds;
Display display;
public WatchCanvas(Display display,int seconds) {
this.display = display;
this.seconds = seconds;
startTime = System.currentTimeMillis();
}
public void paint(Graphics g) {
g.setGrayScale(255);
g.fillRect(0, 0, getWidth(), getHeight());
//確定圓的半徑
int r = (getWidth()-getHeight()<0)?getWidth():getHeight();
if (degree > 0) {
g.setColor(0, 0, 255);
g.fillArc(0,0, r, r, 90, degree);
}
g.setGrayScale(0);
g.drawArc(0, 0, r-1, r-1, 0, 360);
//callSerially的調用會請求run()方法被調用,形成事件的串行化
display.callSerially(this);
}
public void run() {
//根據時間計算角度degree
int permille = (int) ((System.currentTimeMillis()
- startTime) / seconds);
degree = 360 - (permille * 360) / 1000;
repaint();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -