Java计算器GUI编程

    xiaoxiao2023-09-30  154

    编写一个应用程序,设计4个按钮,分别命名为“加”、“减”、“乘”、“除”,有3个文本框和两个标签。单击相应的按钮,将两个文本框的数字做运算,在第三个文本框中显示结果。运行界面如下图所示。

    import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Calculator extends JFrame{ private JLabel label1,label2,label3; private JTextField TextField1=new JTextField(15); private JTextField TextField2=new JTextField(15); private JTextField TextField3=new JTextField(15); private JButton bt1,bt2,bt3,bt4; public Calculator() { super("Calculator"); Container container=getContentPane(); container.setLayout(new FlowLayout()); label1=new JLabel("请输入两个数"); label2=new JLabel(" "); label3=new JLabel("="); TextField3.setEditable(false); bt1=new JButton("+"); bt1.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent event) { label2.setText("+"); double a=Double.parseDouble(TextField1.getText()); double b=Double.parseDouble(TextField2.getText()); double c=a+b; String s3=""+c; TextField3.setText(s3); } }); bt2=new JButton("-"); bt2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { label2.setText("-"); double a=Double.parseDouble(TextField1.getText()); double b=Double.parseDouble(TextField2.getText()); double c=a-b; String s3=""+c; TextField3.setText(s3); } }); bt3=new JButton("*"); bt3.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { label2.setText("*"); double a=Double.parseDouble(TextField1.getText()); double b=Double.parseDouble(TextField2.getText()); double c=a*b; String s3=""+c; TextField3.setText(s3); } }); bt4=new JButton("/"); bt4.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event) { label2.setText("/"); double a=Double.parseDouble(TextField1.getText()); double b=Double.parseDouble(TextField2.getText()); if(b==0) { TextField3.setText("Wrong!"); } double c=a/b; String s3=""+c; TextField3.setText(s3); } }); container.add(label1); container.add(TextField1); container.add(label2); container.add(TextField2); container.add(label3); container.add(TextField3); container.add(bt1); container.add(bt2); container.add(bt3); container.add(bt4); setSize(650,400); setVisible(true); setLocationRelativeTo(null); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } public class CalculatorMain { public static void main (String args[]) { Calculator calculator=new Calculator(); } }

    小结: 我认为这里应该可以有更好的操作方式而不是每一Button都写一次具体的操作方法,应该可以通过函数或其他方式写一次多次调用来解决。以后可以修改,暂定这样。

    最新回复(0)