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

📄 bomb.java

📁 accp s1毕业项目 考试管理系统
💻 JAVA
字号:
package com.exam.ui.game;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.JTextField;

import com.exam.ui.SuperFrame;

public class Bomb extends SuperFrame {
	private static final long serialVersionUID = 1L;
	public JTextField txtBombNum = null;
	private JPanel pnlEasy = null;
	private JPanel pnlMiddle = null;
	private JPanel pnlHard = null;
	private int pnl = 0;
	public JTextField txtTime = null;

	public Bomb() {
		try {
			init();
			this.setVisible(true);
			this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
			this.setResizable(false);

		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	private void init() {
		this.setTitle("扫雷");
		this.setSize(400, 400);
		this.setCenter();

		JPanel pnlTotal = new JPanel();
		this.getContentPane().add(pnlTotal);
		pnlTotal.setLayout(new BorderLayout());

		JMenuBar mnuBar = new JMenuBar();
		this.setJMenuBar(mnuBar);
		JMenu mnuFile = new JMenu("文件");
		JMenu mnuHelp = new JMenu("帮助");
		mnuBar.add(mnuFile);
		mnuBar.add(mnuHelp);

		JMenuItem mnuReStart = new JMenuItem("开局");
		JRadioButtonMenuItem mnuEasy = new JRadioButtonMenuItem("初级");
		JRadioButtonMenuItem mnuMiddle = new JRadioButtonMenuItem("中级", true);
		JRadioButtonMenuItem mnuHard = new JRadioButtonMenuItem("高级");
		final ButtonGroup group = new ButtonGroup();
		group.add(mnuEasy);
		group.add(mnuMiddle);
		group.add(mnuHard);
		JMenuItem mnuExit = new JMenuItem("退出");
		mnuFile.add(mnuReStart);
		mnuFile.addSeparator();
		mnuFile.add(mnuEasy);
		mnuFile.add(mnuMiddle);
		mnuFile.add(mnuHard);
		mnuFile.addSeparator();
		mnuFile.add(mnuExit);

		JMenuItem mnuAbout = new JMenuItem("关于");
		mnuHelp.add(mnuAbout);

		final BombPanel bombPanelEasy = new BombPanel(8, 10,this);
		final BombPanel bombPanelMiddle = new BombPanel(10, 20,this);
		final BombPanel bombPanelHard = new BombPanel(12, 40,this);
		pnlEasy = bombPanelEasy.init();
		pnlMiddle = bombPanelMiddle.init();
		pnlHard = bombPanelHard.init();

		JPanel pnlTop = new JPanel();
		final JPanel pnlMain = new JPanel();
		pnlMain.setLayout(new BorderLayout());

		txtBombNum = new JTextField("000");
		txtBombNum.setFocusable(false);
		txtBombNum.setForeground(Color.red);
		pnlTop.add(txtBombNum);
		
		JLabel lblMargin1 = new JLabel("                                ");
		pnlTop.add(lblMargin1);
		
		JButton btnRestart = new JButton("重新开始");
		pnlTop.add(btnRestart);
		
		JLabel lblMargin2 = new JLabel("                                ");
		pnlTop.add(lblMargin2);
		
		txtTime = new JTextField("000");
		txtTime.setFocusable(false);
		txtTime.setForeground(Color.red);
		pnlTop.add(txtTime);
		
		int num = bombPanelMiddle.getBombNum();
		if (num < 10) {
			txtBombNum.setText("00" + num);
		} else if (num < 100) {
			txtBombNum.setText("0" + num);
		} else {
			txtBombNum.setText("" + num);
		}

		pnlTotal.add(pnlTop, BorderLayout.NORTH);
		pnlTotal.add(pnlMain, BorderLayout.CENTER);

		pnlMain.add(pnlMiddle);
		pnl = 2;

		btnRestart.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent arg0) {
				if(pnl == 1){
					bombPanelEasy.reStart();
				}else if(pnl == 2){
					bombPanelMiddle.reStart();
				}else if(pnl == 3){
					bombPanelHard.reStart();
				}
			}			
		});
		mnuReStart.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				if(pnl == 1){
					bombPanelEasy.reStart();
				}else if(pnl == 2){
					bombPanelMiddle.reStart();
				}else if(pnl == 3){
					bombPanelHard.reStart();
				}
			}
		});
		mnuEasy.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				if(pnl == 1){
					bombPanelEasy.reStart();
				}else if(pnl == 2){
					bombPanelMiddle.reStart();
					pnlMiddle.setVisible(false);
				}else if(pnl == 3){
					bombPanelHard.reStart();
					pnlHard.setVisible(false);
				}				
				pnlMain.add(pnlEasy);
				pnlEasy.setVisible(true);
				pnl = 1;
				int num = bombPanelEasy.getBombNum();
				if (num < 10) {
					txtBombNum.setText("00" + num);
				} else if (num < 100) {
					txtBombNum.setText("0" + num);
				} else {
					txtBombNum.setText("" + num);
				}
			}
		});
		mnuMiddle.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				if(pnl == 1){
					bombPanelEasy.reStart();
					pnlEasy.setVisible(false);
				}else if(pnl == 2){
					bombPanelMiddle.reStart();
				}else if(pnl == 3){
					bombPanelHard.reStart();
					pnlHard.setVisible(false);
				}
				pnlMain.add(pnlMiddle);
				pnlMiddle.setVisible(true);
				pnl = 2;
				int num = bombPanelMiddle.getBombNum();
				if (num < 10) {
					txtBombNum.setText("00" + num);
				} else if (num < 100) {
					txtBombNum.setText("0" + num);
				} else {
					txtBombNum.setText("" + num);
				}
			}
		});
		mnuHard.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				if(pnl == 1){
					bombPanelEasy.reStart();
					pnlEasy.setVisible(false);
				}else if(pnl == 2){
					bombPanelMiddle.reStart();
					pnlMiddle.setVisible(false);
				}else if(pnl == 3){
					bombPanelHard.reStart();
				}
				pnlMain.add(pnlHard);
				pnlHard.setVisible(true);
				pnl = 3;
				int num = bombPanelHard.getBombNum();
				if (num < 10) {
					txtBombNum.setText("00" + num);
				} else if (num < 100) {
					txtBombNum.setText("0" + num);
				} else {
					txtBombNum.setText("" + num);
				}
			}
		});
		mnuExit.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				dispose();
			}
		});
		mnuAbout.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				new About();
			}
		});
	}	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -