package org.chen.view;
import javax.swing.*;
import org.chen.listener.PlaneWindowListener;
import org.chen.pojo.MyPlane;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class PlaneFrame extends JFrame {
public PlanePanel pp = new PlanePanel();
public JMenuBar bar = new JMenuBar();
public JMenu menuGame = new JMenu("【游戏】");
public JMenu menuHelp = new JMenu("【帮助】");
public JMenuItem itemStart = new JMenuItem("开始游戏");
public JMenuItem itemRestart = new JMenuItem("重新开始");
public JMenuItem itemExit = new JMenuItem("退出游戏");
public JMenuItem itemOptions = new JMenuItem("关于");
//创建窗口监听
public PlaneWindowListener plalis = new PlaneWindowListener();
public PlaneFrame() {
initBar();
this.setTitle("雷霆战机");
this.setSize(500, 800);
this.setResizable(false);
this.setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
this.setLayout(null);
pp.setBounds(5, 5, 470, 720);
this.add(pp);
this.setLocationRelativeTo(null);
this.addWindowListener(plalis);
}
public void initBar() {
menuGame.add(itemStart);
menuGame.add(itemRestart);
menuGame.add(itemExit);
menuHelp.add(itemOptions);
bar.add(menuGame);
bar.add(menuHelp);
//重新开始游戏
itemRestart.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//重置子弹
pp.bul = null;
//重置飞机位置
pp.plane.setxPoint(190);
pp.plane.setyPoint(650);
//重置未出现敌人数、击杀、得分
pp.labEnemy.setText("");
pp.labHit.setText("");
pp.labScore.setText("");
//重新绘制窗口
pp.repaint();
System.out.println("重新开始游戏");
}
});
//退出游戏
itemExit.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.exit(0);
}
});
//添加关于对话框
itemOptions.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "作者:陈敬宇 版本:1.0", "关于", JOptionPane.ERROR_MESSAGE);
}
});
this.setJMenuBar(bar);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
基于java swing实现的飞机大战游戏
共16个文件
java:9个
xml:4个
png:2个
需积分: 1 0 下载量 49 浏览量
2024-09-19
21:17:07
上传
评论
收藏 19KB ZIP 举报
温馨提示
该任务实现了简单的飞机大战demo,经过测试,程序正常运行。该程序用的java自动的swing图形组件,简洁舒爽的开发界面,与使用者产生良好的交互,可以通过按键控制飞机的移动,以及子弹的射击,功能相对完善。 以上仅供学习参考!!! 备注: jdk:jdk8 编译器:idea
资源推荐
资源详情
资源评论
收起资源包目录
plane2.0.zip (16个子文件)
plane
plane.iml 433B
image
zidan.png 1KB
feiji01.png 8KB
src
org
chen
thead
BulletThread.java 1KB
tool
Tool.java 624B
pojo
Bullet.java 1KB
MyPlane.java 2KB
view
PlanePanel.java 1KB
PlaneFrame.java 3KB
test
TestPlane.java 526B
listener
PlaneWindowListener.java 1KB
PlaneListener.java 2KB
.idea
workspace.xml 8KB
misc.xml 275B
compiler.xml 169B
modules.xml 257B
共 16 条
- 1
资源评论
最强菜鸟
- 粉丝: 2831
- 资源: 125
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功