📄 startcanvas.java
字号:
package mindsurf;
import java.util.*;
import javax.microedition.lcdui.*;
import com.nokia.mid.ui.FullCanvas;
/*游戏开场动画*/
public class StartCanvas extends FullCanvas implements Runnable{
Display display;
private Image start[]=new Image[3];
private int flag=0;
private boolean b1=true;
private boolean b2=true;
private boolean b3=false;
private boolean b4=false;
private boolean next=false;
/** Constructor */
public StartCanvas(Display display) {
this.display=display;
try{
start[0]=Image.createImage("/res/shijietu.png");
start[1]=Image.createImage("/res/nvren3s.png");
start[2]=Image.createImage("/res/nanren3s.png");
}catch(Exception e){}
Thread thread=new Thread(this);
thread.start();
}
/** Required paint implementation */
protected void paint(Graphics g) {
//设置字体
Font f=Font.getFont(Font.FACE_SYSTEM,Font.STYLE_BOLD,Font.SIZE_SMALL);
g.setFont(f);
//背景图
g.setColor(0x30188B);
g.fillRect(0,0,128,96);
g.setColor(0,0,0);
g.drawImage(start[0],2,8,Graphics.LEFT | Graphics.TOP);
if(flag==0){
g.setClip(94,56,24,40);
g.drawImage(start[2], 94, 56, Graphics.LEFT | Graphics.TOP);
//女人说话动画
g.setClip(10,56,24,40);
if (b1) {
g.drawImage(start[1], 10, 56, Graphics.LEFT | Graphics.TOP);
}
else {
g.drawImage(start[1], -14, 56, Graphics.LEFT | Graphics.TOP);
}
}else if(flag==1){
g.setClip(10,56,24,40);
g.drawImage(start[1], 10, 56, Graphics.LEFT | Graphics.TOP);
//男人说话动画
g.setClip(94,56,24,40);
if (b2) {
g.drawImage(start[2], 94, 56, Graphics.LEFT | Graphics.TOP);
}
else {
g.drawImage(start[2], 70, 56, Graphics.LEFT | Graphics.TOP);
}
//人物出手动画
}else if(flag==2){
g.setClip(10,56,24,40);
g.drawImage(start[1],10,60,Graphics.LEFT | Graphics.TOP);
g.setClip(94,56,24,40);
g.drawImage(start[2],94,60,Graphics.LEFT | Graphics.TOP);
}else if(flag==3){
g.setClip(10,56,34,40);
g.drawImage(start[1],-38,56,Graphics.LEFT | Graphics.TOP);
g.setClip(94,56,34,40);
g.drawImage(start[2],46,56,Graphics.LEFT | Graphics.TOP);
}
//女人说话
if(b3){
g.setClip(0,0,128,128);
g.setColor(255,255,255);
g.drawString("欢迎你到智力大冲浪",10,15,Graphics.LEFT | Graphics.TOP);
}
//男人说话
if(b4){
g.drawString("按任意键挑战脑力",15,35,Graphics.LEFT | Graphics.TOP);
}
//画屏(演播台)
g.setClip(0,0,128,128);
g.setColor(0xB0B0B0);
g.fillRect(0,96,32,32);
g.fillRect(96,96,32,32);
g.setColor(255,255,255);
g.fillRect(32,96,64,32);
g.setColor(0x686665);
g.fillRect(0,108,128,2);
g.drawString("演播室",45,112,Graphics.LEFT | Graphics.TOP);
g.setColor(0,0,0);
}
public void keyPressed(int keyCode){
//按任意键显示下一个界面
if(next){
IqMIDlet.playflag=true;
display.setCurrent(new LoadingCanvas(display));
start=null;
System.gc();
}
}
public void run() {
int i = 0;
while (i < 27) {
try {
Thread.sleep(200);
}
catch (Exception e) {}
if (i == 4) {
//延迟到i=4出现女人说话的文字
b3 = !b3;
}
if (i == 11) {
//男人说话动画开始
flag = 1;
}
if (i == 15) {
//延迟到i=15出现女人说话的文字
b4 = !b4;
}
if (i == 22) {
//人物出手动画开始
flag = 2;
}
if (i == 24) {
flag = 3;
}
if (i == 26) {
//可切换画面标识
next = !next;
}
if (i < 11) {
//i从0-10女人的说话动画
b1 = !b1;
}
else if (i < 21) {
//i从11-21男人的说话动画
b2 = !b2;
}
i++;
repaint();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -