📄 xinxiancanvas.java~34~
字号:
import javax.microedition.lcdui.*;
import javax.microedition.media.*;
import java.io.*;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2006</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class XinXianCanvas extends Canvas implements Runnable {
public XinXianMIDlet xinxianMIDlet;
private int cyclesThisSecond = 0;
private long lastCPSTime = 0;
Font font = Font.getDefaultFont();
byte mian;
private static final int MAX_CPS = 50;
private static final int MS_PER_FRAME = 1000 / MAX_CPS;
private boolean isPaused;
private boolean isStopped;
int Width, Height;
final int key_UP = -1;
final int key_DOWN = -6;
final int key_LEFT = -2;
final int key_RIGHT = -5;
final int key_NUM0 = 48;
final int key_NUM1 = 49;
final int key_NUM2 = 50;
final int key_NUM3 = 51;
final int key_NUM4 = 52;
final int key_NUM5 = 53;
final int key_NUM6 = 54;
final int key_NUM7 = 55;
final int key_NUM8 = 56;
final int key_NUM9 = 57;
final int key_SOFTKEY1 = -21;
final int key_SOFTKEY2 = -22;
final int key_SOFTKEY3 = -20;
Image offScreen;
Graphics drawOffScreen;
int s;
public XinXianCanvas(XinXianMIDlet xinxianMIDlet) {
setFullScreenMode(true);
Width = getWidth();
Height = getHeight();
int jiaodu = 360;
this.xinxianMIDlet = xinxianMIDlet;
Thread t = new Thread(this);
t.start();
font = Font.getFont(Font.FACE_PROPORTIONAL, Font.STYLE_PLAIN,
Font.SIZE_SMALL);
try {
offScreen = Image.createImage(Width, Height);
drawOffScreen = offScreen.getGraphics();
drawOffScreen.setColor(0);
drawOffScreen.fillRect(0, 0, Width, Height);
drawOffScreen.setColor(255,255,255);
int i, j;
double x, y, r;
for (i = 0; i <= 90; i++) {
for (j = 0; j <= 90; j++) {
r = Math.PI / 45 * i * (1 - Math.sin(Math.PI / 45 * j)) *
18;
x = r * Math.cos(Math.PI / 45 * j) *
Math.sin(Math.PI / 45 * i) + Width / 2;
y = -r * Math.sin(Math.PI / 45 * j) + Height / 4;
drawOffScreen.fillArc((int) x, (int) y - 20, 1, 1, 0,
jiaodu);
}
}
} catch (Exception e) {
}
}
void doStartApp() {
mian = 1;
}
void doPauseApp() {
}
public void run() {
while (!isStopped) {
long cycleStarTime = System.currentTimeMillis();
if (System.currentTimeMillis() - lastCPSTime > 100) {
lastCPSTime = System.currentTimeMillis();
Update();
repaint();
cyclesThisSecond = 0;
} else {
cyclesThisSecond++;
}
long tineSinceStart = (cycleStarTime - System.currentTimeMillis());
if (tineSinceStart < MS_PER_FRAME) {
try {
Thread.sleep(MS_PER_FRAME - tineSinceStart);
} catch (InterruptedException e) {
}
}
}
}
protected void paint(Graphics g) {
if (mian == 1) {
g.drawImage(offScreen, 0, 0, g.TOP | g.LEFT);
}
}
public void Update() {
}
public void keyPressed(int keyCode) {
}
protected void pointerPressed(int x, int y) {
if (x > (Width - 40) && y > (Height - 20)) {
s++;
// System.out.println("s="+s);
}
if (x < (Width - 40) && y > (Height - 20)) {
xinxianMIDlet.doExit();
}
}
protected void pointerReleassed(int x,int y){
if (x > (Width - 40) && y > (Height - 20)) {
xinxianMIDlet.doExit();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -