Java Reference
In-Depth Information
Display 17.19
A Simple Calculator (part 2 of 4)
41
JPanel buttonPanel = new JPanel();
42
buttonPanel.setBackground(Color.GRAY);
43
buttonPanel.setLayout( new FlowLayout());
44
JButton addButton = new JButton("+");
45
addButton.addActionListener( this );
46
buttonPanel.add(addButton);
47
JButton subtractButton = new JButton("
");
48
subtractButton.addActionListener( this );
49
buttonPanel.add(subtractButton);
50
JButton resetButton = new JButton("Reset");
51
resetButton.addActionListener( this );
52
buttonPanel.add(resetButton);
53
add(buttonPanel, BorderLayout.CENTER);
54
}
55
public void actionPerformed(ActionEvent e)
56
{
57
try
58
{
59
assumingCorrectNumberFormats(e);
60
}
61
catch (NumberFormatException e2)
62
{
63
ioField.setText("Error: Reenter Number.");
64
}
65
}
A NumberFormatException does not need to be declared
or caught in a catch block.
66
//Throws NumberFormatException.
67
public void assumingCorrectNumberFormats(ActionEvent e)
68
{
69
String actionCommand = e.getActionCommand();
70
if (actionCommand.equals("+"))
71
{
72
result = result + stringToDouble(ioField.getText());
73
ioField.setText(Double.toString(result));
74
}
75
else if (actionCommand.equals("
"))
76
{
77
result = result
stringToDouble(ioField.getText());
78
ioField.setText(Double.toString(result));
Search WWH ::




Custom Search