package javatfly;/* * 2021/6/19 XXX * 此界面为运行界面,ep12.png敌机为道具机 * 该程序实现了飞机大战游戏的基本实现功能 * * 一、功能: * 游戏背景随机切换、英雄机的火力转换、设置敌机的出现情况、背景音乐、可以鼠标控制飞机的飞行位置,也可以用键盘 * 消灭道具机可加子弹量(层次为三层,三层后加生命值,不再加子弹量,当生命添满到三条,不再添加。) * 随分数值的增大,飞机数量也相应增加; * * 二、待完善功能: * 1.背景音乐还完善,存在有时有,有时没有情况 * 2.游戏开始界面还未实现,游戏结束界面还未完善 * 3.开始游戏按钮,暂停按钮,继续游戏按钮,结束游戏按钮还未实现 * 4.敌机爆炸还未实现 * * 三、总结: * 此游戏运用窗口的布局、类的运用、画笔类的图片加载、多线程的内部类实现动画效果、键盘鼠标控制原理(鼠标键盘监听机制来控制运动方向)、 * 矩形检测碰撞检测。 */ import javax.swing.JFrame; /** * 游戏的窗体 * java中的窗体是:JFrame * 自定义窗体步骤: * 1.写一个类,继承JFrame * 2.写一个构造方法,初始化窗体的属性 * 属性对应着特点,方法对应着行为 * @author XXX * */ public class GameFrame extends JFrame{ /* * 构造方法,方法名和类名一样 * 构造方法的作用:例如做月饼的模具,给对象定型 */ public GameFrame() { //设置标题,setTitle是从JFrame中继承过来的 setTitle("飞机小游戏"); //设置窗口大小,setSize(宽度,高度) setSize(512,768); //设置窗体位置居中显示 //"Alt" + "? "快捷键开启代码提示 //null表示相对于屏幕左上角居中 setLocationRelativeTo(null); //设置不允许玩家改变界面大小 set是设置 re代表重复 size大小 able可能性 setResizable(false); //设置默认的关闭选项 //关闭窗体的时候退出程序 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main(String [] args) { //创建窗体对象 //1 2 3 4 //GameFram()是对象 ,放在堆里,frame是指向堆里的GameFram(),frame放在栈中 GameFrame frame=new GameFrame(); //创建面板对象,调用面板的构造方法,制作面板 Gamepanel panel=new Gamepanel(frame);//方便在面板中添加键盘监听器 //调用开始游戏的方法,启动游戏 panel.action(); new Music(); //将面板加入到窗体中 frame.add(panel); //显示窗口 frame.setVisible(true); } }

dusk red LV2
2024年9月2日
12345678ajkdakjd LV1
2024年7月2日
3334004690 LV10
2024年6月22日
bssheep LV1
2023年12月31日
陈小灏 LV18
2023年12月15日
我的java LV8
2023年12月14日
1061404770 LV3
2022年9月26日
agjbvfhjbg LV6
2022年9月9日
Jasonast LV1
2022年6月12日
testuser1234567 LV24
2022年5月31日

dusk red LV2
2024年9月2日
12345678ajkdakjd LV1
2024年6月26日
3334004690 LV10
2024年6月22日
半核野兽 LV1
2024年4月29日
gzcznb LV8
2024年4月1日
bssheep LV1
2023年12月31日
我的java LV8
2023年12月14日
jkjfdgbkl LV2
2023年11月1日
1766545549 LV1
2022年11月17日
李沛阳 LV1
2022年11月6日