⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 caidan.java

📁 JAVA 写的五子棋
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.geom.*;
import java.awt.image.ImageObserver;
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.io.File;
import java.io.FileInputStream;

import javax.swing.*;
import javax.swing.filechooser.FileView;

import sun.audio.AudioPlayer;
import sun.audio.AudioStream;

public class Caidan extends JMenuBar {
	public JMenu game;

	public JMenu option;

	public JMenu help;

	public JMenuItem start;

	public JMenuItem stop;
	public JMenuItem save;

	public JMenuItem goback;

	public JMenuItem exit;

	public static JMenu forbid;
	public static JRadioButtonMenuItem open;
	public static JRadioButtonMenuItem close;

	public static JMenu time;
	
	public JMenu qp;
	public JRadioButtonMenuItem qp1;
	public JRadioButtonMenuItem qp2;
	

	public JMenu music;
	public JRadioButtonMenuItem on;
	public JRadioButtonMenuItem off;
	
	public JMenuItem five;

	public JMenuItem author;

	public JMenuItem version;

	public JMenuItem xianshou;

	public JMenuItem image;
	public JRadioButtonMenuItem ji1;
	public JRadioButtonMenuItem ji2;
	public JRadioButtonMenuItem ji3;
	
	public static int[] Ctime=new int[1];
	

	public ActionListener forbidhandler1;
	
	public ActionListener forbidhandler2;
	public ActionListener exithandler;

	public ActionListener starthandler;

	public ActionListener gobackhandler;
	
	public ActionListener savehandler;
	
	public ActionListener authorhandler;

	public ActionListener fivehandler;

	public ActionListener versionhandler;

	public ActionListener xianshouhandler;

	public ActionListener stophandler;

	public ActionListener imagechoosehander;
	public ActionListener musicon;
	public ActionListener musicoff;
	 public ActionListener listener;
	 
	 public ActionListener qp1listener;
	 public ActionListener qp2listener;
	 public ActionListener time1;
	 public ActionListener time2;
	 public ActionListener time3;
	 public static boolean jshvalue=true;
	 public static boolean muvalue=true;
	 
	DrawLine a;

	public Caidan(DrawLine a) {
		this.a = a;

		forbidhandler1=new ForbidHandler1();
		forbidhandler2=new ForbidHandler2();
		exithandler = new ExitHandler();
		starthandler = new StartHandler(a);
		savehandler=new SaveHandler();
		gobackhandler = new GobackHandler(a);
		authorhandler = new AuthorHandler();
		fivehandler = new FiveHandler();
		versionhandler = new VersionHandler();
		xianshouhandler = new XianshouHandler();
		stophandler = new StopHandler(a);
		imagechoosehander = new ImageChooseHander();
		musicon=new Musicon();
		musicoff=new Musicoff();
		
		qp1listener=new Qp1listener();
		qp2listener=new Qp2listener();
		time1=new Time1();
		time2=new Time2();
		time3=new Time3();
		

		game = new JMenu("游戏(g)");
		game.setMnemonic('g');

		option = new JMenu("选项(o)");
		option.setMnemonic('o');

		help = new JMenu("帮助(h)");
		help.setMnemonic('h');

		start = new JMenuItem("重新开始(r)");
		start.setMnemonic('r');
		start.addActionListener(starthandler);

		save =new JMenuItem("储存");
		save.setMnemonic('a');
		save.addActionListener(savehandler);
		
		stop = new JMenuItem("暂停(s)");
		stop.setMnemonic('s');
		stop.addActionListener(stophandler);

		goback = new JMenuItem("悔棋(d)");
		goback.setMnemonic('d');
		goback.addActionListener(gobackhandler);

		exit = new JMenuItem("退出(e)");
		exit.setMnemonic('e');
		exit.addActionListener(exithandler);

		music=new JMenu("选择音乐");
		on=new JRadioButtonMenuItem ("开");
		off=new JRadioButtonMenuItem ("关");
		ButtonGroup musicgroup=new ButtonGroup();
		musicgroup.add(on);
		musicgroup.add(off);
		
		on.setSelected(true);
		music.add(on);
		
		music.add(off);
		on.addActionListener(musicon);
		off.addActionListener(musicoff);
		
		forbid = new JMenu("选择禁手(f)");
		forbid.setMnemonic('f');
		//forbid.addActionListener(forbidhandler);
		open=new JRadioButtonMenuItem ("开禁手");
		close=new JRadioButtonMenuItem ("关禁手");
		open.addActionListener(forbidhandler1);
		close.addActionListener(forbidhandler2);
		ButtonGroup jishougroup=new ButtonGroup();
		jishougroup.add(open);
		open.setSelected(true);
		jishougroup.add(close);
		forbid.add(open);
		forbid.add(close);
		
		
		
		time = new JMenu("选择总共时间(t)");
		ButtonGroup timegroup=new ButtonGroup();
		
		ji1=new JRadioButtonMenuItem("10分钟");
		ji2=new JRadioButtonMenuItem("20分钟");
	    ji3=new JRadioButtonMenuItem("30分钟");
	    ji1.addActionListener(time1);
	    ji2.addActionListener(time2);
	    ji3.addActionListener(time3);
	    timegroup.add(ji1);
	    timegroup.add(ji2);
	    timegroup.add(ji3);
	    ji2.setSelected(true);
		time.add(ji1);
		time.add(ji2);
		time.add(ji3);
		ji1.setSelected(true);
		time.setMnemonic('t');
		
		
		qp=new JMenu("选择棋盘");
		qp1=new JRadioButtonMenuItem("透明棋盘");
		qp2=new JRadioButtonMenuItem("非透明棋盘");
		ButtonGroup grp=new ButtonGroup();
		grp.add(qp1);
		grp.add(qp2);
		qp2.setSelected(true);
		qp1.addActionListener(qp1listener);
		qp2.addActionListener(qp2listener);
		qp.add(qp1);
		qp.add(qp2);

		image = new JMenuItem("选择背景图片(i).....");
		image.setMnemonic('t');
		image.addActionListener(imagechoosehander);

		five = new JMenuItem("关于五子棋(w)");
		five.setMnemonic('w');
		five.addActionListener(fivehandler);

		author = new JMenuItem("关于作者(a)");
		author.setMnemonic('a');
		author.addActionListener(authorhandler);

		version = new JMenuItem("关于版本(v)");
		version.setMnemonic('v');
		version.addActionListener(versionhandler);

		xianshou = new JMenuItem("猜先手(c)");
		xianshou.setMnemonic('c');
		xianshou.addActionListener(xianshouhandler);

		game.add(start);
		game.add(save);
		game.add(stop);
		game.add(goback);
		game.add(exit);

		
		
		option.add(xianshou);
		option.add(image);
		option.add(music);
		option.add(forbid);
		option.add(qp);
		option.add(time);

		help.add(five);
		help.add(author);
		help.add(version);

		this.add(game);
		this.add(option);
		this.add(help);

	}

}

class StartHandler implements ActionListener {
	DrawLine a;

	MouseTracker m1[];

	public StartHandler(DrawLine a) {
		this.a = a;
		m1 = ButtonPanel.mt;

	}

	public void actionPerformed(ActionEvent e) {
		int bianChang = 15;
		int qp2[][] = new int[bianChang][bianChang];
		qp2 = MouseTracker.getqp();

		if(Option.musicvalue==true||Caidan.muvalue==true){
			try {
				   FileInputStream fileau=new FileInputStream("newgame.wav" );
				   AudioStream as=new AudioStream(fileau);
				   AudioPlayer.player.start(as);
				    }
				  catch (Exception e1) {}
				

		}

		

		a.removeMouseListener(m1[0]);
		
		a.removeAll();
		JFrame cai=new CaiXianShou();
		
		cai.setLocation(200,200);
		

		int i, j;
		for (i = 0; i < 15; i++) {
			for (j = 0; j < 15; j++) {
				qp2[i][j] = 0;
			}
		}
		m1[0].i = 0;

		a.repaint();

		Pane1.getj3().setText("步数:" + 0);
		Pane2.getj3().setText("步数:" + 0);
		m1[0].count1 = 0;
		m1[0].count2 = 0;

		Pane1.getj2().setText("倒计时:" + Caidan.Ctime[0] + ":" + "00");
		Pane2.getj2().setText("倒计时:" +Caidan.Ctime[0]  + ":" + "00");
		Pane1.count = 0;
		Pane2.count = 0;
		Pane1.getTimer().stop();
		Pane2.getTimer().stop();

	}
}

class SaveHandler implements ActionListener{
	public void actionPerformed(ActionEvent e){
		
		
		
		
	}
}

class Time1 implements ActionListener{
	public void actionPerformed(ActionEvent e){
		Caidan.Ctime[0]=10;
		Pane1.j1.setText("限时:10分钟");
		Pane2.j1.setText("限时:10分钟");
	}
}
class Time2 implements ActionListener{
	public void actionPerformed(ActionEvent e){
		Caidan.Ctime[0]=20;
		Pane1.j1.setText("限时:20分钟");
		Pane2.j1.setText("限时:20分钟");
	}
}
class Time3 implements ActionListener{
	public void actionPerformed(ActionEvent e){
		Caidan.Ctime[0]=30;
		Pane1.j1.setText("限时:30分钟");
		Pane2.j1.setText("限时:30分钟");
	}
}


class ForbidHandler1 implements ActionListener{
	public void actionPerformed(ActionEvent e){
		Caidan.jshvalue=true;
		//System.out.println("xuanzele"+Caidan.jshvalue);
	}
}

class ForbidHandler2 implements ActionListener{
	public void actionPerformed(ActionEvent e){
		Caidan.jshvalue=false;
		//System.out.println("xuanzele"+Caidan.jshvalue);
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -