?? controlpanel.java
字號:
package maze;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.math.*;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: </p>
* @author unascribed
* @version 1.0
*/
public class ControlPanel extends JPanel {
private Gen_Solve generator;
private JButton generateButton;
private JButton solveButton;
private JButton exitButton;
private JTextField widthSpinner;
private JTextField heightSpinner;
private JSlider speedSlider;
private JRadioButton showSolveCheckBox;
public ControlPanel() {
init();
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
public void init() {
JPanel panel;
setLayout(new BorderLayout());
generateButton = new JButton("Generate");
widthSpinner = new JTextField();
widthSpinner.setText("15");
heightSpinner = new JTextField();
heightSpinner.setText("15");
panel = new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
panel.add(new JLabel("Generate Area:"));
panel.add(new JLabel("Maze Width"));
panel.add(widthSpinner);
panel.add(new JLabel("Maze Height"));
panel.add(heightSpinner);
panel.add(generateButton);
panel.add(new JLabel(" "));
panel.add(new JLabel(" "));
panel.add(new JLabel("Solve Area:"));
speedSlider = new JSlider(1, 1000, 500);
showSolveCheckBox = new JRadioButton("Tracking");
showSolveCheckBox.setSelected(false);
panel.add(new JLabel("Speed"));
panel.add(speedSlider);
panel.add(new JLabel(" "));
panel.add(showSolveCheckBox);
solveButton = new JButton("AutoSolve");
panel.add(solveButton);
add(panel, BorderLayout.NORTH);
exitButton = new JButton("Exit");
panel = new JPanel();
panel.setLayout(new GridLayout(1,1));
panel.add(exitButton);
add(panel, BorderLayout.SOUTH);
solveButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
Gen_Solve.isauto = 1;
generator.solve();
}
});
exitButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
System.exit(0);
}
});
}
public void setGenerator(Gen_Solve g) {
if (generator != null) {
generator.stop();
}
generator = g;
}
public void addGenerateActionListener(ActionListener listener) {
generateButton.addActionListener(listener);
}
public void addKeyActionList(ActionListener listener){
}
public int getSolveDelay() {
if (showSolveCheckBox.isSelected()) {
return speedSlider.getMaximum() + 1 - speedSlider.getValue();
}
else {
return 0;
}
}
public int isTrack() {
if (showSolveCheckBox.isSelected()) {
return 1;
}
else{
return 0;
}
}
public int getMazeWidth() {
Integer value= new Integer (widthSpinner.getText());
int r = value.intValue() ;
return r < 5 ? 5 : r;
}
public int getMazeHeight() {
Integer value= new Integer (heightSpinner.getText());
int r = value.intValue() ;
return r < 5 ? 5 : r;
}
private void jbInit() throws Exception {
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -