📄 monkey.java
字号:
package story;
import java.applet.Applet;
import java.awt.Button;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Date;
public class Monkey extends Applet implements Runnable, ActionListener{
private Thread thread; //声明线程
boolean m_bRunning; //线程是否启动
Image[] images; //声明图像数组
String[] messages; //声明消息数组
int index; //数组下标
Button btnStart,btnStop,btnExit; //声明三个按钮
public void init(){
//创建对象
btnStart=new Button("开始");
btnStop=new Button("停止");
btnExit=new Button("退出");
images=new Image[35];
messages=new String[35];
//设置窗口属性
this.setSize(240,270);
//添加按钮
this.add(btnStart);
this.add(btnStop);
this.add(btnExit);
//添加事件监听器
btnStart.addActionListener(this);
btnStop.addActionListener(this);
btnExit.addActionListener(this);
//加载图像文件
for(int i=0;i<images.length;i++){
images[i]=this.getImage(this.getCodeBase(),"story/"+(i+1)+".jpg");
}
//给消息数组赋值
for(int i=0; i<messages.length;i++){
messages[i]="第 "+(i+1)+" 张图片";
}
}
public void update(Graphics g){
paint(g);
}
public void paint(Graphics g){
Image offImage=this.createImage(this.getWidth(), this.getHeight());
Graphics offGraphics=offImage.getGraphics();
offGraphics.drawImage(images[index],30,30,this);
//offGraphics.drawString(messages[index], 80, 200);
//offGraphics.drawString(new Date().toLocaleString(), 60, 220);
g.drawImage(offImage,0,0,this);
}
public void start() {
thread=new Thread(this); //创建线程
thread.start(); //启动线程
}
public void stop() {
thread=null;
}
public void run() {
while (m_bRunning) {
try {
Thread.sleep(1500);
} catch (InterruptedException e) {
e.printStackTrace();
}
if(index<33){
index++;
}else{
index=0;
}
repaint(); //重绘
}
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==btnStart){
m_bRunning=true;
start();
}else if(e.getSource()==btnStop){
m_bRunning=false;
stop();
}else
System.exit(0);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -