01: package net.ar.webonswing.tutorial;
02:
03: import java.awt.*;
04: import java.awt.event.*;
05:
06: import javax.swing.*;
07:
08: public class Calculator1 extends JDialog implements ActionListener {
09: protected JLabel resultLabel;
10: protected JTextField firstNumerField;
11: protected JTextField secondNumerField;
12: protected JComboBox operationCombo;
13:
14: public Calculator1() {
15: Container contentPane = getContentPane();
16:
17: resultLabel = new JLabel("result");
18: firstNumerField = new JTextField("");
19: secondNumerField = new JTextField("");
20: operationCombo = new JComboBox(new String[] { "+", "-", "*",
21: "/" });
22: JButton processButton = new JButton("=");
23:
24: processButton.addActionListener(this );
25:
26: contentPane.setLayout(new GridLayout(2, 3));
27: contentPane.add(firstNumerField);
28: contentPane.add(operationCombo);
29: contentPane.add(secondNumerField);
30: contentPane.add(resultLabel);
31: contentPane.add(processButton);
32:
33: pack();
34: }
35:
36: public void actionPerformed(ActionEvent e) {
37: float firstNumber = Float.parseFloat(firstNumerField.getText());
38: float secondNumber = Float.parseFloat(secondNumerField
39: .getText());
40: float result = 0;
41:
42: switch (operationCombo.getSelectedItem().toString().charAt(0)) {
43: case '+':
44: result = firstNumber + secondNumber;
45: break;
46: case '-':
47: result = firstNumber - secondNumber;
48: break;
49: case '*':
50: result = firstNumber * secondNumber;
51: break;
52: case '/':
53: result = firstNumber / secondNumber;
54: break;
55: }
56:
57: resultLabel.setText(Float.toString(result));
58: }
59: }
|