package com.java4_18.snak05;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JPanel;
import com.java4_18.snak05.SnakPanle.SnakeThread;
public class Button extends JPanel{
SnakPanle snakPanle;
Button(SnakPanle snakPanle){
this.snakPanle = snakPanle;
this.setBounds(0, 440, 706, 60);
JButton pause = new JButton("暂停游戏");
JButton continu = new JButton("继续游戏");
JButton restart = new JButton("重新开始");
this.add(pause);
this.add(continu);
this.add(restart);
pause.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Config.isgone = false;
}
});
continu.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
Config.isgone = true;
snakPanle.setFocusable(true);
snakPanle.requestFocus();
}
});
restart.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
snakPanle.snakeThread.stopThread();//把当前线程停掉
//重新在蛇运动的面板上创建原始的蛇和食物
Food food = new Food();
snakPanle.food = food;
snakPanle.snake = new Snake(food);
//把控制条件还原
Config.isgone = true;
Config.islive = true;
//在面板上创建一个新的线程
SnakeThread snakeThread = snakPanle.new SnakeThread();
snakeThread.start();
snakPanle.snakeThread = snakeThread;
//获取键盘焦点
snakPanle.setFocusable(true);
snakPanle.requestFocus();
}
});
}
}