001:// テキストフィールドの加減乗除
002:
003:import java.awt.* ;
004:import java.awt.event.* ;
005:import javax.swing.* ;
006:
007:public class Compute4 {
008:
009:    static JTextField area1;                                        // データ入力用
010:    static JTextField area2;                                        //     〃
011:    static JLabel addarea = new JLabel( "", SwingConstants.RIGHT ); // 和
012:    static JLabel subarea = new JLabel( "", SwingConstants.RIGHT ); // 差
013:    static JLabel mularea = new JLabel( "", SwingConstants.RIGHT ); // 積
014:    static JLabel divarea = new JLabel( "", SwingConstants.RIGHT ); // 商
015:
016:    public static void main(String args[]) {
017:                                                // フレームの作成
018:        JFrame frame = new JFrame("2数の計算");
019:        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
020:        Container pane = frame.getContentPane();
021:        pane.setLayout(new BorderLayout());
022:                                                // テキストフィールドの作成
023:        area1 = new JTextField("", 10);
024:        area1.setHorizontalAlignment( JTextField.RIGHT );
025:        area2 = new JTextField("", 10);
026:        area2.setHorizontalAlignment( JTextField.RIGHT );
027:                                                // ボタンの作成
028:        JButton compbutton = new JButton("計算");
029:        compbutton.addActionListener(new ActionListener() {
030:            public void actionPerformed(ActionEvent e) {
031:                int arg1 = Integer.parseInt(area1.getText());
032:                int arg2 = Integer.parseInt(area2.getText());
033:                addarea.setText(String.valueOf(arg1+arg2));
034:                subarea.setText(String.valueOf(arg1-arg2));
035:                mularea.setText(String.valueOf(arg1*arg2));
036:                if(arg2==0) divarea.setText(" − ");
037:                else        divarea.setText(String.valueOf(arg1/arg2));
038:            }
039:        });
040:                                                // 表題ラベルの作成
041:        JPanel west = new JPanel( new GridLayout(4,1) );
042:        west.add( new JLabel("和:") );
043:        west.add( new JLabel("差:") );
044:        west.add( new JLabel("積:") );
045:        west.add( new JLabel("商:") );
046:                                                // コンポーネントの配置
047:        JPanel north = new JPanel( new GridLayout(3,1) );
048:        north.add(compbutton);
049:        north.add(area1);
050:        north.add(area2);
051:
052:        JPanel center = new JPanel( new GridLayout(4,1) );
053:        center.add(addarea);
054:        center.add(subarea);
055:        center.add(mularea);
056:        center.add(divarea);
057:
058:        pane.add( north,  BorderLayout.NORTH );
059:        pane.add( west,   BorderLayout.WEST );
060:        pane.add( center, BorderLayout.CENTER );
061:                                                 // ウィンドウの表示
062:        frame.pack();
063:        frame.setVisible(true);
064:    }
065:}