?? menucontroller.java
字號(hào):
package mine.control;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import mine.model.*;
import mine.*;
import mine.listener.*;
import mine.view.*;
public class MenuController {
ModelAction gamemodelaction;
Frame frameMenuOn;
JMenu gameMenu = new JMenu("游戲(G)");
JMenuItem jmiStart = new JMenuItem("開(kāi)局(N)");
ActionListener jmiStartAction;
JRadioButtonMenuItem level1 = new JRadioButtonMenuItem("初級(jí)(B)");
ActionListener level1Action;
JRadioButtonMenuItem level2 = new JRadioButtonMenuItem("中級(jí)(I)");
ActionListener level2Action;
JRadioButtonMenuItem level3 = new JRadioButtonMenuItem("高級(jí)(E)");
ActionListener level3Action;
JRadioButtonMenuItem level0 = new JRadioButtonMenuItem("自定義(C)");
ActionListener level0Action;
JCheckBoxMenuItem checkusemark = new JCheckBoxMenuItem("使用標(biāo)記");
ActionListener checkusermarkAction;
JMenuItem jmiExit = new JMenuItem("退出(X)");
ActionListener jmiExitAction;
JMenuItem heroMenuitem = new JMenuItem("掃雷英雄榜");
ActionListener heroAction;
JMenu helpMenu = new JMenu("幫助(H)");
ButtonGroup levelGroup = new ButtonGroup();
JMenuItem about = new JMenuItem("關(guān)于(A)");
ActionListener aboutAction;
JMenuBar jmenubar = new JMenuBar();
GameConfigure gameconfig = GameConfigure.getInstance();
public MenuController() {
initMenu();
}
public void setFrameMenuOn(Frame frame) {
frameMenuOn = frame;
}
public void initMenu() {
jmenubar.setBorder(BorderFactory.createLineBorder(Color.lightGray, 2));
gameMenu.setMnemonic('G');
level1.setMnemonic('B');
level2.setMnemonic('I');
level3.setMnemonic('E');
level0.setMnemonic('C');
jmiExit.setMnemonic('X');
checkusemark.setSelected(true);
checkusemark.setMnemonic('M');
heroMenuitem.setMnemonic('T');
levelGroup.add(level1);
levelGroup.add(level2);
levelGroup.add(level3);
levelGroup.add(level0);
helpMenu.setMnemonic('H');
about.setMnemonic('A');
//-------------組裝菜單
jmenubar.add(gameMenu);
jmenubar.add(helpMenu);
gameMenu.add(jmiStart);
gameMenu.addSeparator();
gameMenu.add(level1);
gameMenu.add(level2);
gameMenu.add(level3);
gameMenu.add(level0);
gameMenu.addSeparator();
gameMenu.add(checkusemark);
gameMenu.addSeparator();
gameMenu.add(heroMenuitem);
gameMenu.addSeparator();
gameMenu.add(jmiExit);
helpMenu.add(about);
//----------------根據(jù)gameconfigure初始化菜單
int level = gameconfig.getLevel();
switch (level) {
case 1:
level1.setSelected(true);
break;
case 2:
level2.setSelected(true);
break;
case 3:
level3.setSelected(true);
break;
case 0:
level0.setSelected(true);
break;
}
boolean usemark = gameconfig.isUseMark();
checkusemark.setSelected(usemark);
//--------------------菜單動(dòng)作
initAction();
}
private void initAction() {
jmiStartAction = new ActionListener() {
public void actionPerformed(ActionEvent e) {
gamemodelaction.startGame();
}
};
jmiStart.addActionListener(jmiStartAction);
//-------------------------
level1Action = new ActionListener() {
public void actionPerformed(ActionEvent e) {
level1.setSelected(true);
gamemodelaction.setGameLevel(1);
gamemodelaction.startGame();
}
};
level1.addActionListener(level1Action);
//-------------------------
level2Action = new ActionListener() {
public void actionPerformed(ActionEvent e) {
level2.setSelected(true);
gamemodelaction.setGameLevel(2);
gamemodelaction.startGame();
}
};
level2.addActionListener(level2Action);
//-------------------------
level3Action = new ActionListener() {
public void actionPerformed(ActionEvent e) {
level3.setSelected(true);
gamemodelaction.setGameLevel(3);
gamemodelaction.startGame();
}
};
level3.addActionListener(level3Action);
//-------------------------
level0Action = new ActionListener() {
public void actionPerformed(ActionEvent e) {
level0.setSelected(true);
gamemodelaction.setGameLevel(0);
CustomDialog cd = new CustomDialog(frameMenuOn);
cd.show();
gamemodelaction.startGame();
}
};
level0.addActionListener(level0Action);
//-------------------------
checkusermarkAction = new ActionListener() {
public void actionPerformed(ActionEvent e) {
gameconfig.setUseMark(!gameconfig.isUseMark());
checkusemark.setSelected(gameconfig.isUseMark());
}
};
checkusemark.addActionListener(checkusermarkAction);
//--------------------------
jmiExitAction = new ActionListener() {
public void actionPerformed(ActionEvent e) {
gamemodelaction.exitGame();
}
};
jmiExit.addActionListener(jmiExitAction);
//-------------------------------
heroAction = new ActionListener() {
public void actionPerformed(ActionEvent e) {
HeroDialog hd = new HeroDialog(frameMenuOn);
hd.show();
}
};
heroMenuitem.addActionListener(heroAction);
//----------------------
aboutAction = new ActionListener() {
public void actionPerformed(ActionEvent e) {
AboutDialog aboutdialog = new AboutDialog(frameMenuOn);
aboutdialog.show(true);
}
};
about.addActionListener(aboutAction);
}
public void setModelAction(ModelAction modelaction) {
this.gamemodelaction = modelaction;
}
public JMenuBar getMenubar() {
return jmenubar;
//-------------------------------
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -