sxxok 2013-04-26 16:21 采纳率: 0%
浏览 105

下面是一个简单的计算器代码,有错误,希望可以指出来,谢谢

import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class Exercise15_4 extends JFrame{
double d1,d2,d3;
String d4;

public Exercise15_4(){

        JPanel p1=new JPanel();
        JPanel p2=new JPanel();
        JTextField tt1=new JTextField(8);
        JTextField tt2=new JTextField(8);
        JTextField tt3=new JTextField(8);
        setLayout(new GridLayout(2,1,0,5));
        add(p1); add(p2);
        p1.setLayout(new FlowLayout());
        p1.add(new JLabel("Number1"));
        p1.add(tt1);
        p1.add(new JLabel("Number2"));
        p1.add(tt2);
        p1.add(new JLabel("Result"));
        p1.add(tt3);
        p2.setLayout(new FlowLayout());
        JButton b1=new JButton("Add");
        JButton b2=new JButton("Subtrace");
        JButton b3=new JButton("Multiple");
        JButton b4=new JButton("Divide");
        p2.add(b1);p2.add(b2);p2.add(b3);p2.add(b4);
        b1.setMnemonic('A'); b2.setMnemonic('S'); b3.setMnemonic('M'); b4.setMnemonic('D');
        p2.add(b1); p2.add(b2); p2.add(b3); p2.add(b4);
        String msg1=tt1.getText();
        String msg2=tt2.getText();
        d1=Double.parseDouble(msg1);
        d2=Double.parseDouble(msg2);
        b1.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
                d3=d1+d2;
            }
        });
        b2.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
                d3=d1-d2;
            }
        });
        b1.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
                d3=d1*d2;
            }
        });
        b1.addActionListener(new ActionListener(){
            public void actionPerformed(ActionEvent e){
               if(d2==0) JOptionPane.showInputDialog(null,"error");
               else d3=d1/d2;
            }
        });
        d4=String.valueOf(d3);
        tt3.setText(d4);

}
public static void main(String[] args) {
Exercise15_4 frame= new Exercise15_4();
frame.setTitle("Exercise15_4");
frame.setSize(500,110);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);

}
}

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
    • ¥15 如何在scanpy上做差异基因和通路富集?
    • ¥20 关于#硬件工程#的问题,请各位专家解答!
    • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
    • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
    • ¥30 截图中的mathematics程序转换成matlab
    • ¥15 动力学代码报错,维度不匹配
    • ¥15 Power query添加列问题
    • ¥50 Kubernetes&Fission&Eleasticsearch
    • ¥15 報錯:Person is not mapped,如何解決?