欢迎来到天天文库
浏览记录
ID:32020440
大小:191.50 KB
页数:66页
时间:2019-01-30
《java练习_坦克大战4.0.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、packageMyTankGame4_0;importjava.awt.*;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.awt.event.KeyEvent;importjava.awt.event.KeyListener;importjava.io.BufferedReader;importjava.io.BufferedWriter;importjava.io.File;importjava.io.FileReader;i
2、mportjava.io.FileWriter;importjava.io.IOException;importjava.util.*;importjava.io.*;importjava.util.Vector;importjavax.imageio.ImageIO;importjavax.swing.*;publicclassMyTankGame4_0extendsJFrameimplementsActionListener{//声明一个标志intflag=0;//声明一个运行面板MyPanelmp=null;//定义一个开始的面板My
3、StartPanelmsp=null;//做出我需要的菜单JMenuBarjmb=null;//开始游戏JMenujm1=null;JMenuItemjmi1=null;//退出系统JMenuItemjmi2=null;JMenuItemjmi3=null;JMenuItemjmi4=null;publicstaticvoidmain(String[]args){MyTankGame4_0mytankgame1=newMyTankGame4_0();mytankgame1.setLocationRelativeTo(null);//将JFr
4、ame设置在中间//mytankgame1.setLocation(210,140);//设置JFrame的位置}publicMyTankGame4_0()//构造{//初始化菜单栏jmb=newJMenuBar();jm1=newJMenu("游戏(G)");//设置快捷方式jm1.setMnemonic('G');jmi1=newJMenuItem("开始新游戏(N)");jmi2=newJMenuItem("退出游戏(E)");jmi3=newJMenuItem("存盘退出(C)");jmi4=newJMenuItem("继续上次游戏
5、(L)");jmi1.setMnemonic('N');jmi2.setMnemonic('E');jmi3.setMnemonic('C');jmi4.setMnemonic('L');//对jmi1响应,注册监听,标记消息源jmi1.addActionListener(this);jmi1.setActionCommand("newgame");jmi2.addActionListener(this);jmi2.setActionCommand("exit");jmi3.addActionListener(this);jmi3.setA
6、ctionCommand("saveandexit");jmi4.addActionListener(this);jmi4.setActionCommand("continuegame");jm1.add(jmi1);jm1.add(jmi2);jm1.add(jmi3);jm1.add(jmi4);jmb.add(jm1);//声明初始化面板msp=newMyStartPanel();Threadt=newThread(msp);t.start();//初始化窗口,构造函数的重点this.setJMenuBar(jmb);//千万注意啊!
7、!!!this.add(msp);this.setSize(400,300);this.setVisible(true);this.setDefaultCloseOperation(EXIT_ON_CLOSE);}publicvoidactionPerformed(ActionEvente){//对用户不同的点击做出不同的处理//首先得到command字符串,判断消息源if(e.getActionCommand().equals("newgame")){this.setSize(600,500);mp=newMyPanel(flag);//
8、启动mp线程Threadt1=newThread(mp);t1.start();//先删除旧的面板this.remove(msp);this.add(mp);//注册监听this
此文档下载收益归作者所有