Java Reference
In-Depth Information
23
super( "Fractal" );
24
25
// set up levelJLabel to add to controlJPanel
26
final JLabel levelJLabel = new JLabel( "Level: 0" );
27
28
final FractalJPanel drawSpace = new FractalJPanel( 0) ;
29
30
// set up control panel
31
final JPanel controlJPanel = new JPanel();
32
controlJPanel.setLayout( new FlowLayout());
33
34
// set up color button and register listener
35
final JButton changeColorJButton = new JButton( "Color" );
36
controlJPanel.add(changeColorJButton);
37
changeColorJButton.addActionListener(
38
new ActionListener() // anonymous inner class
39
{
40
// process changeColorJButton event
41
@Override
42
public void actionPerformed(ActionEvent event)
43
{
44
Color color = JColorChooser.showDialog(
45
Fractal. this , "Choose a color" , Color.BLUE );
46
47
// set default color, if no color is returned
48
if (color == null )
49
color = Color.BLUE ;
50
51
drawSpace.setColor(color);
52
}
53
} // end anonymous inner class
54
); // end addActionListener
55
56
// set up decrease level button to add to control panel and
57
// register listener
58
final JButton decreaseLevelJButton = new JButton( "Decrease Level" );
59
controlJPanel.add(decreaseLevelJButton);
60
decreaseLevelJButton.addActionListener(
61
new ActionListener() // anonymous inner class
62
{
63
// process decreaseLevelJButton event
64
@Override
65
public void actionPerformed(ActionEvent event)
66
{
67
int level = drawSpace.getLevel();
--level;
68
69
70
// modify level if possible
71
if ((level >= MIN_LEVEL )) &&
72
(level <= MAX_LEVEL ))
73
{
74
levelJLabel.setText( "Level: " + level);
Fig. 18.18 | Fractal user interface. (Part 2 of 3.)
Search WWH ::




Custom Search