watchcanvas.java
来自「j2me简单实例,j2me教程加源码,希望大家喜欢」· Java 代码 · 共 39 行
JAVA
39 行
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 + =
减小字号Ctrl + -
显示快捷键?