java坦克大战源代码(实现多种功能)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

//此文件有三个.java文件组成

//以包名为标志,复制时请注意

package com.tank4_3;

import javax.imageio.ImageIO;

import java.io.*;

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.util.*;

public class MyTankGame extends JFrame implements ActionListener

{

MyJPanel mp = null;

MyStartPanel msp=null;

JMenuBar jmb=null;

JMenu jm1=null;

JMenu jm2=null;

JMenuItem jmi1=null;

JMenuItem jmi2=null;

JMenuItem jmi3=null;

JMenuItem jmi4=null;

JMenuItem jmi5=null;

JMenuItem jmi6=null;

JMenuItem jmi21=null;

public static void main(String[] args) { MyTankGame ytg = new MyTankGame();

}

public MyTankGame()

{

msp=new MyStartPanel();

Thread t=new Thread(msp);

t.start();

jmb=new JMenuBar();

jm1=new JMenu("游戏(G)");

jm1.setMnemonic('g');

jmi1=new JMenuItem("新游戏(N)");

jmi1.setMnemonic('n');

jmi1.addActionListener(this);

jmi1.setActionCommand("newgame");

jmi2=new JMenuItem("暂停(S)");

jmi2.setMnemonic('s');

jmi2.addActionListener(this);

jmi2.setActionCommand("suspend");

jmi3=new JMenuItem("继续(C)");

jmi3.setMnemonic('c');

jmi3.addActionListener(this);

jmi3.setActionCommand("continue"); jmi6=new JMenuItem("读取游戏(X)"); jmi6.setMnemonic('x');

jmi6.addActionListener(this);

jmi6.setActionCommand("loadGame"); jmi4=new JMenuItem("储存游戏(Q)"); jmi4.setMnemonic('q');

jmi4.addActionListener(this);

jmi4.setActionCommand("save");

jmi5=new JMenuItem("退出(E)");

jmi5.setMnemonic('e');

jmi5.addActionListener(this);

jmi5.setActionCommand("exit");

jm2=new JMenu("帮助(H)");

jm2.setMnemonic('h');

jmi21=new JMenuItem("操作说明(U)"); jmi21.setMnemonic('u');

jmi21.addActionListener(this);

jmi21.setActionCommand("help");

jmb.add(jm1);

jmb.add(jm2);

jm1.add(jmi1);

jm1.add(jmi2);

jm1.add(jmi3);

jm1.add(jmi6);

jm1.add(jmi4);

jm1.add(jmi5);

jm2.add(jmi21);

this.setJMenuBar(jmb);

this.add(msp);

setSize(430, 430);

setResizable(false);

setTitle("坦克大战4.3");

setVisible(true);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }

public void actionPerformed(ActionEvent arg0) { // TODO Auto-generated method stub

//按开始后显示战斗场面

if(arg0.getActionCommand().equals("newgame"))

{

//进入战斗后可以重新开始

if(this.mp!=null)

{

this.remove(mp);

}

this.mp = new MyJPanel("new");

add(this.mp);

Thread t = new Thread(this.mp);

t.start();

addKeyListener(this.mp);

GameRecord.setEnNum(20);

GameRecord.setMyNum(3);

GameRecord.setHitNum(0);

//要显示战斗场面,先要移除开始画面

this.remove(msp);

//刷新

this.setVisible(true);

}//战斗暂停

else if(arg0.getActionCommand().equals("suspend")) {

//让子弹和坦克的速度变为0

相关文档
最新文档