01:// テキストフィールドの加減
02:
03:import java.awt.* ;
04:import java.awt.event.* ;
05:import javax.swing.* ;
06:
07:class TextFieldDemo6 extends JFrame {
08:
09: static JTextField area1; // データ入力用
10: static JTextField area2; // 〃
11: static JLabel addarea = new JLabel( "", SwingConstants.RIGHT ); // 和
12: static JLabel subarea = new JLabel( "", SwingConstants.RIGHT ); // 差
13:
14: class MyActionListener implements ActionListener {
旧26〜32行目をコピーし、21行目のカッコを書き直す
15: public void actionPerformed(ActionEvent e) {
16: int arg1 = Integer.parseInt(area1.getText());
17: int arg2 = Integer.parseInt(area2.getText());
18: addarea.setText(String.valueOf(arg1+arg2));
19: subarea.setText(String.valueOf(arg1-arg2));
20: }
21: };
22:
23: public TextFieldDemo6(String s) {
24: super(s);
旧17〜59行目をコピーし、frame. を削除する(25、28行目)
25: addWindowListener(new WindowAdapter() {
26: public void windowClosing(WindowEvent e) { System.exit(0); }
27: });
28: Container pane = getContentPane();
29: pane.setLayout(new BorderLayout());
30: // テキストフィールドの作成
31: area1 = new JTextField("", 10);
32: area1.setHorizontalAlignment( JTextField.RIGHT );
旧25〜32行目を次の行に置き換える
33: area1.addActionListener( new MyActionListener() );
34:
35: area2 = new JTextField("", 10);
36: area2.setHorizontalAlignment( JTextField.RIGHT );
14:旧36〜43行目を次の行に置き換える
37: area2.addActionListener( new MyActionListener() );
38: // 表題ラベルの作成
39: JPanel west = new JPanel( new GridLayout(2,1) );
40: west.add( new JLabel("和:") );
41: west.add( new JLabel("差:") );
42: // コンポーネントの配置
43: JPanel north = new JPanel( new GridLayout(2,1) );
44: north.add(area1);
45: north.add(area2);
46:
47: JPanel center = new JPanel( new GridLayout(2,1) );
48: center.add(addarea);
49: center.add(subarea);
50:
51: pane.add( north, BorderLayout.NORTH );
52: pane.add( west, BorderLayout.WEST );
53: pane.add( center, BorderLayout.CENTER );
54: }
55:
56: public static void main(String args[]) {
57: // フレームの作成
58: TextFieldDemo6 frame = new TextFieldDemo6("2数の計算");
59: // ウィンドウの表示
60: frame.pack();
61: frame.setVisible(true);
62: }
63:}