📄 menu.java
字号:
/*
* Frame.java
*
* Created on 2008年3月2日, 下午11:55
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package eight;
import java.io.*;
import java.util.LinkedList;
import javax.swing.*;
import javax.swing.event.*;
import java.awt.event.*;
import java.awt.*;
import javax.swing.JComponent;
import javax.swing.JMenuBar;
/**
*
* @author 刘杨
*/
public class Menu implements ActionListener{
File file4=new File("file4.txt");
File file5=new File("file5.txt");
File file6=new File("file6.txt");
File file7=new File("file7.txt");
File file8=new File("file8.txt");
File file9=new File("file9.txt");
File file10=new File("file10.txt");
File file11=new File("file11.txt");
File file12=new File("file12.txt");
LinkedList achivement=null;
Record record;
ShowRecord showrecord;
JMenuBar MenuBar=new JMenuBar();
JMenu 游戏=new JMenu("游戏");
JMenu 帮助=new JMenu("帮助");
JMenuItem menu11=new JMenuItem("新建");
JMenu menu12=new JMenu("难度");
JMenuItem menu13=new JMenuItem("英雄榜");
JMenuItem menu14=new JMenuItem("提示");
JMenuItem menu15=new JMenuItem("退出");
JMenuItem menu21=new JMenuItem("帮助主题");
JMenuItem menu22=new JMenuItem("关于");
JMenuItem menu121=new JMenuItem("4*4");
JMenuItem menu122=new JMenuItem("5*5");
JMenuItem menu123=new JMenuItem("6*6");
JMenuItem menu124=new JMenuItem("7*7");
JMenuItem menu125=new JMenuItem("8*8");
JMenuItem menu126=new JMenuItem("9*9");
JMenuItem menu127=new JMenuItem("10*10");
JMenuItem menu128=new JMenuItem("11*11");
JMenuItem menu129=new JMenuItem("12*12");
private ChessPanel panel;
private int time;
private JLabel 显示时间=null;
public Timer 计时器=null;
private boolean 计时器是否启动=false;
private Chess[][] ChessButton;
/** Creates a new instance of Frame */
public Menu(ChessPanel panel) {
this.panel=panel;
计时器=new Timer(1000,this);
显示时间=new JLabel();
MenuBar.add(游戏);
MenuBar.add(帮助);
MenuBar.add(显示时间);
游戏.setFont(new java.awt.Font("华文新魏", 1, 25));
帮助.setFont(new java.awt.Font("华文新魏", 1, 25));
menu11.setFont(new java.awt.Font("华文新魏", 1, 25));
menu12.setFont(new java.awt.Font("华文新魏", 1, 25));
menu121.setFont(new java.awt.Font("华文新魏", 1, 25));
menu122.setFont(new java.awt.Font("华文新魏", 1, 25));
menu123.setFont(new java.awt.Font("华文新魏", 1, 25));
menu124.setFont(new java.awt.Font("华文新魏", 1, 25));
menu125.setFont(new java.awt.Font("华文新魏", 1, 25));
menu126.setFont(new java.awt.Font("华文新魏", 1, 25));
menu127.setFont(new java.awt.Font("华文新魏", 1, 25));
menu128.setFont(new java.awt.Font("华文新魏", 1, 25));
menu129.setFont(new java.awt.Font("华文新魏", 1, 25));
menu13.setFont(new java.awt.Font("华文新魏", 1, 25));
menu14.setFont(new java.awt.Font("华文新魏", 1, 25));
menu15.setFont(new java.awt.Font("华文新魏", 1, 25));
menu21.setFont(new java.awt.Font("华文新魏", 1, 25));
menu22.setFont(new java.awt.Font("华文新魏", 1, 25));
显示时间.setFont(new java.awt.Font("华文新魏", 1, 20));
menu11.setBackground(Color.white);
menu12.setBackground(Color.white);
menu121.setBackground(Color.white);
menu122.setBackground(Color.white);
menu123.setBackground(Color.white);
menu124.setBackground(Color.white);
menu125.setBackground(Color.white);
menu126.setBackground(Color.white);
menu127.setBackground(Color.white);
menu128.setBackground(Color.white);
menu129.setBackground(Color.white);
menu13.setBackground(Color.white);
menu14.setBackground(Color.white);
menu15.setBackground(Color.white);
menu21.setBackground(Color.white);
menu22.setBackground(Color.white);
MenuBar.setBackground(Color.white);
显示时间.setBackground(Color.white);
游戏.add(menu11);
游戏.add(menu12);
游戏.add(menu13);
游戏.add(menu14);
游戏.add(menu15);
帮助.add(menu21);
帮助.add(menu22);
menu12.add(menu121);
menu12.add(menu122);
menu12.add(menu123);
menu12.add(menu124);
menu12.add(menu125);
menu12.add(menu126);
menu12.add(menu127);
menu12.add(menu128);
menu12.add(menu129);
menu11.addActionListener(this);
menu13.addActionListener(this);
menu14.addActionListener(this);
menu15.addActionListener(this);
menu121.addActionListener(this);
menu122.addActionListener(this);
menu123.addActionListener(this);
menu124.addActionListener(this);
menu125.addActionListener(this);
menu126.addActionListener(this);
menu127.addActionListener(this);
menu128.addActionListener(this);
menu129.addActionListener(this);
menu21.addActionListener(this);
menu22.addActionListener(this);
this.ChessButton=panel.ChessButton;
for(int i=0;i<12;i++){
for(int j=0;j<12;j++) {
ChessButton[i][j].addActionListener(this);
}
}
achivement=new LinkedList();
this.createfile();
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==menu11){
panel.setpanel(panel.getm());
time=0;
计时器是否启动=false;
计时器.stop();
显示时间.setText("所用时间:0秒");
}
else if(e.getSource()==menu121){
panel.setpanel(4);
time=0;
计时器是否启动=false;
计时器.stop();
显示时间.setText("所用时间:0秒");
}
else if(e.getSource()==menu122){
panel.setpanel(5);
time=0;
计时器是否启动=false;
计时器.stop();
显示时间.setText("所用时间:0秒");
}
else if(e.getSource()==menu123){
panel.setpanel(6);
time=0;
计时器是否启动=false;
计时器.stop();
显示时间.setText("所用时间:0秒");
}
else if(e.getSource()==menu124){
panel.setpanel(7);
time=0;
计时器是否启动=false;
计时器.stop();
显示时间.setText("所用时间:0秒");
}
else if(e.getSource()==menu125){
panel.setpanel(8);
time=0;
计时器是否启动=false;
计时器.stop();
显示时间.setText("所用时间:0秒");
}
else if(e.getSource()==menu126){
panel.setpanel(9);
time=0;
计时器是否启动=false;
计时器.stop();
显示时间.setText("所用时间:0秒");
}
else if(e.getSource()==menu127){
panel.setpanel(10);
time=0;
计时器是否启动=false;
计时器.stop();
显示时间.setText("所用时间:0秒");
}
else if(e.getSource()==menu128){
panel.setpanel(11);
time=0;
计时器是否启动=false;
计时器.stop();
显示时间.setText("所用时间:0秒");
}
else if(e.getSource()==menu129){
panel.setpanel(12);
time=0;
计时器是否启动=false;
计时器.stop();
显示时间.setText("所用时间:0秒");
}
if(e.getSource()==menu13){
showrecord=new ShowRecord(file4,file5,file6,file7,
file8,file9,file10,file11,file12);
showrecord.setVisible(true);
}
if(e.getSource()==menu14){
panel.searchflict();
}
if(e.getSource()==menu15){
System.exit(0);
}
if(e.getSource()==menu21){
Help help=new Help();
help.setVisible(true);
}
if(e.getSource()==menu22){
About about=new About();
about.setVisible(true);
}
if(e.getSource() instanceof Chess){
if(计时器是否启动==false){
time=0;
计时器.start();
计时器是否启动=true;
}
for(int i=0;i<12;i++){
for(int j=0;j<12;j++) {
if(e.getSource()==ChessButton[i][j]){
ChessButton[i][j].act(i,j);
if(panel.getsuccess()==true){
计时器.stop();
if(panel.getm()==4)
record=new Record(file4,panel,显示时间);
if(panel.getm()==5)
record=new Record(file5,panel,显示时间);
if(panel.getm()==6)
record=new Record(file6,panel,显示时间);
if(panel.getm()==7)
record=new Record(file7,panel,显示时间);
if(panel.getm()==8)
record=new Record(file8,panel,显示时间);
if(panel.getm()==9)
record=new Record(file9,panel,显示时间);
if(panel.getm()==10)
record=new Record(file10,panel,显示时间);
if(panel.getm()==11)
record=new Record(file11,panel,显示时间);
if(panel.getm()==12)
record=new Record(file12,panel,显示时间);
record.setTime(time);
record.setVisible(true);
panel.frame.setEnabled(false);
time=0;
计时器是否启动=false;
}
}
}
}
}
if(e.getSource()==计时器){
time+=1;
显示时间.setText("所用时间:"+time+"秒");
}
}
private void createfile() {
if(!file4.exists()){
try{
FileOutputStream out=new FileOutputStream("file4.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(achivement);
object_out.close();
out.close();
} catch(IOException e){}
}
if(!file5.exists()){
try{
FileOutputStream out=new FileOutputStream("file5.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(achivement);
object_out.close();
out.close();
} catch(IOException e){}
}
if(!file6.exists()){
try{
FileOutputStream out=new FileOutputStream("file6.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(achivement);
object_out.close();
out.close();
} catch(IOException e){}
}
if(!file7.exists()){
try{
FileOutputStream out=new FileOutputStream("file7.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(achivement);
object_out.close();
out.close();
} catch(IOException e){}
}
if(!file8.exists()){
try{
FileOutputStream out=new FileOutputStream("file8.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(achivement);
object_out.close();
out.close();
} catch(IOException e){}
}
if(!file9.exists()){
try{
FileOutputStream out=new FileOutputStream("file9.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(achivement);
object_out.close();
out.close();
} catch(IOException e){}
}
if(!file10.exists()){
try{
FileOutputStream out=new FileOutputStream("file10.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(achivement);
object_out.close();
out.close();
} catch(IOException e){}
}
if(!file11.exists()){
try{
FileOutputStream out=new FileOutputStream("file11.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(achivement);
object_out.close();
out.close();
} catch(IOException e){}
}
if(!file12.exists()){
try{
FileOutputStream out=new FileOutputStream("file12.txt");
ObjectOutputStream object_out=new ObjectOutputStream(out);
object_out.writeObject(achivement);
object_out.close();
out.close();
} catch(IOException e){}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -