⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 loseframe.java

📁 简单的用Java做的小游戏主要是用了自己的框架来
💻 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 + -