📄 animationcanvas.java
字号:
package org.gui.com;
import org.httpClient.com.HttpHandler;
import org.httpClient.com.RMStore;
import javax.microedition.lcdui.Canvas;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Form;
import javax.microedition.lcdui.Graphics;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.TextBox;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.*;
public class AnimationCanvas extends Canvas implements Runnable {
boolean stopFlag = false;
private int k =0;
private int canW, canH;
private TextBox next;
public int curIndex = 0;
final static int LEN = 7;
private Image imgList[];
private Display display;
private RMStore cookie;
private String message = null;
private HttpClientSetForm setForm;
private HttpClient hc;
private String URL;
public AnimationCanvas(Display display,String URL,RMStore cookie,HttpClient hc) {
this.display = display;
this.cookie = cookie;
this.hc = hc;
this.cookie = cookie;
loadPic();
canW = getWidth();
canH = getHeight();
this.URL = URL;
new Thread(this).start();
}
public AnimationCanvas(Display display,HttpClient hc){
this.display = display;
this.hc = hc;
loadPic();
canW = getWidth();
canH = getHeight();
new Thread(this).start();
}
public void loadPic(){
try {
imgList = new Image[7];//LEN
for (int i=1;i<8;i++) {
imgList[i-1] = Image.createImage("/"+ i +".png");
}
} catch (Exception e) {
System.out.println("Can not load images: " + e);
}
}
public void run() {
while(!stopFlag) {
curIndex ++;
if (curIndex == LEN-1) {
//中间有一个明显的停顿
curIndex = 0;
}
try {
repaint();
k++;
if(k*10>this.getWidth())
{
stopFlag = true;
new HttpHandler(display,URL,null,"get",cookie,hc).start();
}
Thread.sleep(300);
} catch (Exception e) {
}
}
}
/**
* 在这个方法中绘制屏幕
*/
protected void paint(Graphics g) {
//清除屏幕 - 背景黑色
g.setColor(0xffffff);
g.fillRect(0, 0, this.getWidth(), this.getHeight());
//在屏幕的中央绘制动画
int x, y, w, h;
if (curIndex>=0 && imgList[curIndex] != null) {
w = imgList[curIndex].getWidth();
h = imgList[curIndex].getHeight();
x = (canW - w) / 2;
y = (canH - h) / 2;
g.drawImage(imgList[curIndex], x, y,
Graphics.TOP | Graphics.LEFT);
}
g.setColor(0xffff);
g.fillRect(0, this.getHeight()-20, k*10, this.getHeight());
}
public boolean stop(){
return stopFlag;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -