在好例子网,分享、交流、成长!
您当前所在位置:首页Java 开发实例Android平台开发 → java 坦克大战游戏 源码下载(Swing)

java 坦克大战游戏 源码下载(Swing)

Android平台开发

下载此实例
  • 开发语言:Java
  • 实例大小:4.98M
  • 下载次数:57
  • 浏览次数:576
  • 发布时间:2018-06-10
  • 实例类别:Android平台开发
  • 发 布 人:gamee
  • 文件格式:.rar
  • 所需积分:2
 相关标签: 游戏 坦克

实例介绍

【实例简介】

【实例截图】

from clipboard


from clipboard



from clipboard

【核心代码】


 package tankwar;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.TextField;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;

import javax.swing.ButtonGroup;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JSlider;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;

import lightButton.LightButton;
import mapediter.MapEdit;


public class Main implements ActionListener{
		private JFrame f;
		private PanelX p;
		private LightButton butStart;
		private LightButton butEdit;
		private LightButton butHelp;
		private LightButton butAbort;
		private int width;
		private int height;
		private LightButton butExit;
		private JDialog set;
		private Help help=new Help();
		private Abort about=new Abort(); 
		private String map;
		private int max;
		protected int style;
		public Main() {
			setF(new JFrame("TankWar 3.0"));
			p=new PanelX();
			p.setLayout(null);
			butStart=new LightButton(20,210,140,50,"START");
			butEdit=new LightButton(20,263,140,50,"Map Editer");
			butHelp=new LightButton(20,316,140,50,"Help Doc");
			butAbort=new LightButton(20,369,140,50,"About");
			butExit=new LightButton(20,422,140,50,"Exit");
			butStart.addActionListener(this);
			butEdit.addActionListener(this);
			butHelp.addActionListener(this);
			butAbort.addActionListener(this);
			butAbort.addActionListener(this);
			butExit.addActionListener(this);
			p.add(butStart);
			p.add(butEdit);
			p.add(butHelp);
			p.add(butAbort);
			p.add(butExit);
			getF().add(p);
			getF().setSize(0,0);
			width=700;height=700;
			getF().setDefaultCloseOperation(3);
			getF().setResizable(true);
			getF().setVisible(true);
			for (int i = 0; i < width; i =20) {
					getF().setSize(i,i*(height/width));
					try {
						Thread.sleep(10);
					} catch (InterruptedException e) {}
				
			}
		}
	public static void main(String[] args) {
		new Main();
	}

	private class PanelX extends JPanel
	{
		/**
		 * 
		 */
		private static final long serialVersionUID = 5954299196924652990L;
		private ImageIcon backgrond;

		@Override
		protected void paintComponent(Graphics g) {
			super.paintComponent(g);
			backgrond=new ImageIcon(Main.class.getResource("/pic/start2.jpg"));
			g.drawImage(backgrond.getImage(), 0, 0, 800, 830, 0, 0, backgrond.getIconWidth(), backgrond.getIconHeight(), null);
		}
	}
	public void over()
	{
		for (int i = width; i >=0; i-=20) {
			getF().setSize(i,i*(height/width));
			try {
				Thread.sleep(10);
			} catch (InterruptedException e) {}
				}
		getF().setVisible(false);
	}
	@Override
	public void actionPerformed(ActionEvent e) {
		if(e.getSource()==butExit)
		{
			over();
		}
		else if(e.getSource()==butEdit)
		{
			new MapEdit(this);
		}
		else if(e.getSource()==butStart)
		{
			dialog();
			try {
				new TankWar(map,max,f,style);
			} catch (Exception e1) {
			}
		}
		else if(e.getSource()==butHelp)
		{
			help.setVisible(true);
		}
		else if(e.getSource()==butAbort)
		{
			about.setVisible(true);
		}
		
	}
	private void dialog() {
		set = new JDialog(f,true);
		set.setVisible(false);
		set.setTitle("游戏设置");
		set.setBounds(200,100, 400, 600);
		JLabel tankShow=new JLabel(new ImageIcon(Main.class.getResource("/pic/tanks.jpg")));
		tankShow.setBounds(150, 0, 243, 400);
		ButtonGroup tankGroup=new ButtonGroup();
		final JRadioButton tank1=new JRadioButton("重型坦克:");
		final JRadioButton tank2=new JRadioButton("主战坦克:");
		final JRadioButton tank3=new JRadioButton("轻型坦克:");
		tank1.setSelected(true);
		tankGroup.add(tank1);
		tankGroup.add(tank2);
		tankGroup.add(tank3);
		Font tankFont = new Font("黑体",3,22);
		tank1.setFont(tankFont);
		tank2.setFont(tankFont);
		tank3.setFont(tankFont);
		tank1.setBounds(0, 0, 150, 120);
		tank2.setBounds(0, 140, 150, 120);
		tank3.setBounds(0, 280, 150, 120);
		JPanel dp = new JPanel(null);
		File dir = new File("map");
		String mapNames[]=dir.list();
		final JComboBox list = new JComboBox();
		for (int i = 0; i < mapNames.length; i  ) {
			list.addItem(mapNames[i]);			
		}
		list.setBounds(100, 410, 250, 30);
		JLabel labMap = new JLabel("地图:");
		labMap.setFont(new Font("宋体", 1, 20));
		labMap.setBounds(20, 410, 80, 30);
		JLabel labMax=new JLabel("敌军数量:");
		labMax.setFont(new Font("宋体", 1, 16));
		labMax.setBounds(20, 470, 120, 30);
		final JSlider slider = new JSlider(10, 50);
		slider.setBounds(150, 470, 230, 50);
		slider.setPaintTicks(true);
		slider.setPaintLabels(true);
		slider.setMajorTickSpacing(10);
		slider.setMinorTickSpacing(2);
		final TextField showMax = new TextField(String.valueOf(slider.getValue()));
		showMax.setFont(new Font("", 0, 20));
		showMax.setBackground(Color.WHITE);
		showMax.setEditable(false);
		showMax.setBounds(100, 470, 30, 30);
		slider.addChangeListener(new ChangeListener() {
			public void stateChanged(ChangeEvent e) {
				showMax.setText(String.valueOf(slider.getValue()));
			}
		});
		JButton butOk = new JButton("开始游戏");
		butOk.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				max=slider.getValue();
				map=(String)list.getSelectedItem();
				set.setVisible(false);
				if(tank1.isSelected())	style=1;		
				else if(tank2.isSelected()) style=2;
				else if (tank3.isSelected()) style=3;
				over();
			}
		});
		butOk.setBounds(120, 530, 140, 30);
		dp.add(tank1);
		dp.add(tank2);
		dp.add(tank3);
		dp.add(tankShow);
		dp.add(butOk);
		dp.add(showMax);
		dp.add(labMap);
		dp.add(list);
		dp.add(labMax);
		dp.add(slider);
		set.add(dp);
		set.setVisible(true);		
	}
	public void setF(JFrame f) {
		this.f = f;
	}
	public JFrame getF() {
		return f;
	}
}


标签: 游戏 坦克

实例下载地址

java 坦克大战游戏 源码下载(Swing)

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警