?? buttonpanel.java
字號:
import java.awt.*;
import sun.audio.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.awt.geom.*;
public class ButtonPanel extends JLabel implements ActionListener {
JButton bt1;
JButton bt2;
JButton bt3;
JButton bt4;
//MouseTracker m;
static MouseTracker[] mt=new MouseTracker[1];
//mt[1]=m;
public ActionListener listener;
DrawLine a;
public ButtonPanel(DrawLine a) {
this.a = a;
this.setLayout(null);
//mt[0]=m;
Icon p1 = new ImageIcon("rebegin.jpg");
Icon p2 = new ImageIcon("regret.jpg");
Icon p3 = new ImageIcon("stop.jpg");
Icon p4 = new ImageIcon("exit.jpg");
bt1 = new JButton(p1);
bt2 = new JButton(p2);
bt3 = new JButton(p3);
bt4 = new JButton(p4);
bt1.setToolTipText("重新開始");
bt2.setToolTipText("悔棋)");
bt3.setToolTipText("暫停");
bt4.setToolTipText("退出");
bt1.setMnemonic(KeyEvent.VK_B);
bt2.setMnemonic(KeyEvent.VK_R);
bt3.setMnemonic(KeyEvent.VK_S);
bt4.setMnemonic(KeyEvent.VK_E);
bt1.addActionListener(this);
bt2.addActionListener(this);
bt3.addActionListener(this);
bt4.addActionListener(this);
bt1.setLocation(81, 32);
bt2.setLocation(32, 81);
bt3.setLocation(130, 81);
bt4.setLocation(81, 130);
bt1.setSize(48, 48);
bt2.setSize(48, 48);
bt3.setSize(48, 48);
bt4.setSize(48, 48);
this.add(bt1);
this.add(bt2);
this.add(bt3);
this.add(bt4);
mt[0] = new MouseTracker(a);
}
public void actionPerformed(ActionEvent e) {
int bianChang = 15;
int qp2[][] = new int[bianChang][bianChang];
qp2 = MouseTracker.getqp();
if (e.getSource() == bt1) {
a.removeMouseListener(mt[0]);
a.removeAll();
//Caidan.time.enable(true);
JFrame cai=new CaiXianShou();
cai.setLocation(200,200);
//cai.toBack();
Caidan.time.enable(false);
Caidan.forbid.enable(false);
//a.addMouseListener(mt[0]);
int i, j;
for (i = 0; i < 15; i++) {
for (j = 0; j < 15; j++) {
qp2[i][j] = 0;
}
}
mt[0].i = 0;
a.repaint();
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) {}
}
Pane1.getj3().setText("步數:"+0);
Pane2.getj3().setText("步數:"+0);
mt[0].count1=0;
mt[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();
}
if (e.getSource() == bt2) {
if (mt[0].i > 0) {
Qizi[] qizi = mt[0].getQizi();
qizi = mt[0].getQizi();
a.remove(qizi[mt[0].i]);
qp2[qizi[mt[0].i].gethang()][qizi[mt[0].i].getlie()] = 0;
mt[0].i = mt[0].i - 1;
a.repaint();
}
else {
JOptionPane.showMessageDialog(a, "不能再悔棋了哦!");
}
}
if(e.getSource()==bt3){
if(mt[0].i%2==0){
Pane1.timer.stop();
}
else {
Pane2.timer.stop();
}
}
if(e.getSource()==bt4){
showmessagetoconfirm();
}
}
public void showmessagetoconfirm(){
int a;
a=JOptionPane.showConfirmDialog(null,"確定推出游戲?","Confirm to exit",JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);
if(a==JOptionPane.YES_OPTION){
ChessBoard.getJF().dispose();
listener=new listenerHandler2();
Timer time=new Timer(12000,listener);
time.start();
exit x=new exit();
}
else{
if(a==JOptionPane.NO_OPTION){
}
}
}
}
class listenerHandler2 implements ActionListener{
public void actionPerformed(ActionEvent e){
exit.close();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -