📄 loseframe.java
字号:
package frame;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.MediaTracker;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import assistant.Music;
import assistant.PublicVar;
/**
* 失败窗体
* @author Administrator
*
*/
public class LoseFrame extends JFrame implements Runnable,KeyListener {
/**
*
*/
private static final long serialVersionUID = -5296300676976302599L;
/** 取得双缓冲画布 */
private Image memoryImage;
/** 产生双缓冲画笔 */
private Graphics memoryGraphics;
/**失败图像*/
private Image loseImage = new ImageIcon("image/overImage.jpg").getImage();
private boolean isStart = true;
/**
* 构造方法
*
*/
public LoseFrame(){
/* 设置窗体大小 */
this.setSize(650, 550);
/* 设置窗体可见 */
this.setVisible(true);
/* 设置点击关闭,程序结束 */
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
/* 设置窗口不可改变 */
this.setResizable(false);
/*设置窗体居中*/
this.setLocationRelativeTo(null);
/*媒体追踪器*/
MediaTracker tracker = new MediaTracker(this);
tracker.addImage(loseImage, 0);//加载图像
try {
tracker.waitForID(0);//等待加载
} catch (InterruptedException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
/* 创建画布 */
memoryImage = this.createImage(650, 550);
/* 得到画笔对象 */
memoryGraphics = memoryImage.getGraphics();
/*注册键盘事件*/
this.addKeyListener(this);
// 播放背景音乐
Music.playSingleMusic(Music.PLAY_LOSE);
Thread thread=new Thread(this);
thread.start();
}
public void run() {
// TODO 自动生成方法存根
while(this.isStart){
repaint();
try {
Thread.sleep(20);
} catch (InterruptedException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
}
}
public void update(Graphics g){
this.memoryGraphics.drawImage(this.loseImage, 0,0, this);
g.drawImage(this.memoryImage, 0,0,this);
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
new LoseFrame();
}
public void keyPressed(KeyEvent e) {
// TODO 自动生成方法存根
if(e.getKeyCode() == KeyEvent.VK_ESCAPE){
this.isStart = false;
Music.stopSingleMusic();
this.dispose();
PublicVar.rest();
new MenuFrame();
}
}
public void keyReleased(KeyEvent e) {
// TODO 自动生成方法存根
}
public void keyTyped(KeyEvent e) {
// TODO 自动生成方法存根
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -