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

📄 toolpanel.java

📁 数据结构中的迷宫算法
💻 JAVA
字号:
package labyrinth;

import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.JButton;
import javax.swing.JOptionPane;
import javax.swing.JPanel;



public class ToolPanel extends JPanel implements MouseListener, Runnable {
	JButton start,stop;

	JButton reset;

	static boolean started;

	Labyrinth ll;

	static boolean end;

	static boolean active;

	Thread aniThread;
	
	static boolean win;
	


	public ToolPanel(Labyrinth ll) {

		aniThread = new Thread(this);
		active = true;
		this.ll = ll;
		start = new JButton("start");
		reset = new JButton("reset");
		start.addMouseListener(this);
		reset.addMouseListener(this);
		add(reset);
		add(start);
		setBorder(WinLabyrinth.compound);

	}

	public void mouseClicked(MouseEvent e) {
		Object src = e.getSource();
		if (src == start) {
			if (started) {
				return;
			}
			active = true;
			start();
			return;
		}
		if (src == reset) {
			// if(/*end||!*/started){
			active = false;
			// end=false;
			reset();

			// }
			ll.ap.repaint();
			return;
		}
	}

	public final void reset() {
		// must call before ll.creatBalks
		ll.resetLocation(true);
		ll.creatBalks();
		ll.car.reset();
		ll.ap.reset();
		started = false;
		win=false;
	}

	public void start() {
		aniThread = new Thread(this);
		aniThread.start();
		started = true;
	}

	public void mouseEntered(MouseEvent arg0) {
	}

	public void mouseExited(MouseEvent arg0) {
	}

	public void mousePressed(MouseEvent arg0) {
	}

	public void mouseReleased(MouseEvent arg0) {
	}

	public void run() {
		try {
			ll.getAway();
		} catch (Exception e) {
			// TODO: handle exception
			//e.printStackTrace();
			String[] ok={"Play demo once again"};
			int result=JOptionPane.showOptionDialog(ll.ap,
					"I can't getaway,how do you enter ?"
					,"I hope you like me,foo",JOptionPane.CANCEL_OPTION,
					JOptionPane.INFORMATION_MESSAGE,null,ok,ok[0]);
			if(result==0){
				active = false;
				reset();
				ll.ap.repaint();
			}
		}
	}
}

⌨️ 快捷键说明

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