Java小游戏-贪吃蛇

  • 游戏界面菜单栏

菜单按钮包括窗口居中和退出
音效按钮里面可以设置开启音效
保存按钮是导出用户记录
帮助按钮是游戏说明

public class Snake {
	//创建方法
	public static void firstPage() {
		//创建一个窗体类
		JFrame frame = new JFrame();
		JMenuBar menuBar = new JMenuBar(); //添加菜单栏
		JMenu file = new JMenu("菜单(F)  ");
		file.setPreferredSize(new Dimension(100, 50));
		file.setFont(new Font("宋体", Font.BOLD, 25));
		JMenu file1 = new JMenu("音效(E)  ");
		file1.setPreferredSize(new Dimension(100, 50));
		file1.setFont(new Font("宋体", Font.BOLD, 25));
		JMenu file2 = new JMenu("保存(S)  ");
		file2.setPreferredSize(new Dimension(100, 50));
		file2.setFont(new Font("宋体", Font.BOLD, 25));
		JMenu file3 = new JMenu("帮助(H)  ");
		file3.setPreferredSize(new Dimension(100, 50));
		file3.setFont(new Font("宋体", Font.BOLD, 25));
		// 设置助记符为F,按下ALT + F 可以触发该菜单
		file.setMnemonic('F');
		// 设置助记符为E,按下ALT + E 可以触发该菜单
		file1.setMnemonic('E');
		// 设置助记符为S,按下ALT + S 可以触发该菜单
		file2.setMnemonic('S');
		// 设置助记符为H,按下ALT + H 可以触发该菜单
		file3.setMnemonic('H');

		JMenuItem open = new JMenuItem("居中");
		JMenuItem open1 = new JMenuItem("退出");

		JMenuItem open2 = new JMenuItem("帮助");

		JMenuItem open3 = new JMenuItem("开");

		//======================================
		//设置字体
		open.setFont(new Font("宋体", Font.BOLD, 25));
		open1.setFont(new Font("宋体", Font.BOLD, 25));
		open2.setFont(new Font("宋体", Font.BOLD, 25));
		open3.setFont(new Font("宋体", Font.BOLD, 25));


		//======================================
		file.add(open);
		// 设置菜单分隔符
		file.addSeparator();
		file.add(open1);
		// 设置菜单分隔符
		file.addSeparator();

		file1.add(open3);
		//============================
		file3.add(open2);

		//添加按钮
		menuBar.add(file);
		menuBar.add(file1);
		menuBar.add(file2);
		menuBar.add(file3);

		// 设置菜单栏,使用这种方式设置菜单栏可以不占用布局空间
		frame.setJMenuBar(menuBar);
		//设置窗体大小
		frame.setBounds(400, 200, 1500, 1000);  // 窗体宽高
		frame.setLocationRelativeTo(null);
		frame.setResizable(true);//固定窗体
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭窗口,程序结束
		//监听按钮open,如果按下则会触发相对事件
		open.addActionListener(new ActionListener() {
			@Override
			//窗体重新居中
			public void actionPerformed(ActionEvent e) {
				frame.setLocationRelativeTo(null);
			}
		});
		//监听按钮open1,如果按下则会触发相对事件
		open1.addActionListener(new ActionListener() {
			@Override
			//结束进程
			public void actionPerformed(ActionEvent e) {
				System.exit(0); //值为零,正常结束进程

			}

		});
		//监听按钮open2,如果按下则会触发相对事件
		open2.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent e) {
				//捕捉异常,并且使用cmd来打开对应的文件
				try {
					@SuppressWarnings("unused")
					Process process = Runtime.getRuntime().exec(
							"cmd.exe /c notepad d:/java work/java/yxy-snake/help/帮助.txt");
				} catch (Exception x) {
					//显示文件
					x.printStackTrace();
				}
			}
		});
//监听按钮open,如果按下则会触发相对事件
		open3.addActionListener(new ActionListener() {
			@Override
			public void actionPerformed(ActionEvent e) {
				//设置音乐位置
				AudioPlayWave audioPlayWave = new AudioPlayWave("music/Bd.wav");
				//启动音乐
				audioPlayWave.start();
			}
		});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值