📄 hourglass.java
字号:
package vitular.ui;
import javax.microedition.lcdui.*;
/**
*滚动沙漏
*@CopyRight:eshouji.com
*@Author:ceze
*@Version 1.0 2004/4/22
*/
public class Hourglass
extends MsgCtrlBase {
//等待转动图标名称
private final String HOURGLA_IMAGE_NAME = "/img/hourglas.png";
//private final String WAITINFO_STRING = "请稍候...";
private String waitString = "请稍候...";
//等待图帧数,宽/高
private final short HOURGLA_IMAGE_FRAME = 5;
private Image hourglaImg;
private int frameDrawIndex;
private int imgW, imgH; //图单帧宽高
/**
*构造函数<br>
*Left、Top:显示位置顶点坐标<br>
*/
public Hourglass(MsgCanvas canvas, int Left, int Top, int Width, int Height) {
super(canvas, Left, Top, Width, Height);
init();
}
/**
*构造函数<br>
*/
public Hourglass(MsgCanvas canvas) {
super(canvas);//0, 0, MsgCanvas.ScreenWidth, XCanvas.ScreenHeight);
init();
}
/**
* 设置等待时显示的文字
* @param str String
*/
public void setWaitString(String str){
waitString = str;
}
private void init(){
try {
hourglaImg = Image.createImage(HOURGLA_IMAGE_NAME);
imgW = hourglaImg.getWidth() / HOURGLA_IMAGE_FRAME;
imgH = hourglaImg.getHeight();
}
catch (Exception e) {
System.out.println(e.toString()+"Hour1111");
}
//显示位置默认居中
posX = (width - left - imgW) >> 1;
posY = height*3/4 ;
//posY = height - imgH - 10;
frameDrawIndex = 0;
}
public void nextFrame() {
if (active == true) {
if (++frameDrawIndex >= HOURGLA_IMAGE_FRAME) {
frameDrawIndex = 0;
}
}
}
/**
*绘制进度条,paint方法不能自己激发,需要主类方法调用
*/
public void updateSelf(Graphics g) {
// System.out.println("Hourglass updateSelf");
if (g == null || visible == false) {
return;
}
if (hourglaImg != null) {
//图片显示方式
g.setClip(posX, posY, imgW, imgH);
g.drawImage(hourglaImg, posX - frameDrawIndex * imgW, posY,
Graphics.LEFT | Graphics.TOP);
g.setClip(0, 0, width, height);
if (waitString!=null){
g.setColor(0, 0, 0);
g.drawString(waitString, width >> 1, posY - 5,
g.HCENTER | g.BOTTOM);
//System.out.println("Splash!!!");
}
}
else {
//图形显示方式
}
// nextFrame();
if (++frameDrawIndex >= HOURGLA_IMAGE_FRAME) {
frameDrawIndex = 0;
}
// System.out.println("Hourglass End updateSelf");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -