📄 jmine.java
字号:
/** * 文件:JMine.java * 说明:扫雷主类 */package javamine;import java.awt.*;import java.awt.event.*;import javax.swing.*;public class JMine extends JFrame{ AboutMine aboutMine; static JMenuBar menuBar; static int gridx=9; static int gridy=9; static int mines=10; static CoreMine cm; public JMine(){ setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//预设窗口关闭方式 setTitle("扫雷Java版"); setSize(CoreMine.getDimension(gridx,gridy));//设定窗口大小 setLocation(600,300); setBackground(new Color(192,192,192)); setVisible(true); setResizable(false); aboutMine=new AboutMine("关于 扫雷",this); //创建菜单栏 menuBar=new JMenuBar(); JMenu gameMenu=new JMenu("游戏(G)"); //开局子菜单 JMenuItem gameMenuStart=new JMenuItem("开局(N)",'N'); gameMenuStart.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_F2,0)); gameMenuStart.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ cm.reset(); } }); gameMenu.add(gameMenuStart); gameMenu.addSeparator(); //设置单选菜单组 ButtonGroup group=new ButtonGroup(); //初级子菜单 JRadioButtonMenuItem gameMenuEasy=new JRadioButtonMenuItem("初级(B)"); gameMenuEasy.setSelected(true); gameMenuEasy.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ gridx=9; gridy=9; mines=10; setSize(CoreMine.getDimension(gridx,gridy));//设定窗口大小 cm=new CoreMine(gridx,gridy,mines,getContentPane());//建立CoreMine对象 } }); gameMenu.add(gameMenuEasy); group.add(gameMenuEasy); //中级子菜单 JRadioButtonMenuItem gameMenuMiddle=new JRadioButtonMenuItem("中级(I)"); gameMenuMiddle.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ gridx=16; gridy=16; mines=40; setSize(CoreMine.getDimension(gridx,gridy));//设定窗口大小 cm=new CoreMine(gridx,gridy,mines,getContentPane());//建立CoreMine对象 } }); gameMenu.add(gameMenuMiddle); group.add(gameMenuMiddle); //高级子菜单 JRadioButtonMenuItem gameMenuHard=new JRadioButtonMenuItem("高级(E)"); gameMenuHard.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ gridx=30; gridy=16; mines=99; setSize(CoreMine.getDimension(gridx,gridy));//设定窗口大小 cm=new CoreMine(gridx,gridy,mines,getContentPane());//建立CoreMine对象 } }); gameMenu.add(gameMenuHard); group.add(gameMenuHard);//gameMenuCustom, gameMenu.addSeparator(); JCheckBoxMenuItem gameMenuSound=new JCheckBoxMenuItem("声音(S)",true); /*if(gameMenuSound.isSelected()) cm.setSound(true); else cm.setSound(false);*/ gameMenu.add(gameMenuSound); gameMenu.addSeparator(); JMenuItem gameMenuExit=new JMenuItem("退出(X)",'X'); gameMenuExit.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ System.exit(0); } }); gameMenu.add(gameMenuExit); menuBar.add(gameMenu); JMenu helpMenu=new JMenu("帮助(G)"); JMenuItem gameMenuAbout=new JMenuItem("关于扫雷(A)...",'A'); gameMenuAbout.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e){ aboutMine.setVisible(true); } }); helpMenu.add(gameMenuAbout); menuBar.add(helpMenu); setJMenuBar(menuBar); cm=new CoreMine(gridx,gridy,mines,getContentPane());//建立CoreMine对象 getContentPane().addMouseListener(cm);//加入鼠标监听事件 getContentPane().addMouseMotionListener(cm);//加入鼠标监听事件 } //创建游戏菜单 /** * @param args the command line arguments */ public static void main(String[] args) { new JMine(); } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -