用JAVA编写程序,生成一个简单的计算器界面,添加事件处理功能,实现基本的加、减

2024-11-25 07:47:14
推荐回答(2个)
回答1:

http://hi.baidu.com/shy2850/blog/item/8967dd62de14576d0c33fac9.html

你要的应该就是这个东西吧?

回答2:

import java.awt.*;
import java.awt.event.*;
class Calculate extends Frame implements ActionListener
{ TextField t1=new TextField(5); //第一个操作数文本框
TextField t2=new TextField(5); //运算符文本框
TextField t3=new TextField(5); //第一个操作数文本框
TextField t4=new TextField(5); //结果文本框
Label L1=new Label("=");
Button btn=new Button("计算");
public Calculate()
{ setLayout(new FlowLayout());
add(t1);add(t2);add(t3);
add(L1);add(t4);add(btn);
btn.addActionListener(this); //注册动作事件监听者为当前对象
addWindowListener(new WindowAdapter()
{//关闭窗口事件
public void windowClosing(WindowEvent e)
{ dispose(); //释放窗口
System.exit(0); //退出程序
}
});
}
public void actionPerformed(ActionEvent e)
{
float x,y; //操作数变量
double result=0; //结果变量
String op;
try
{ //异常捕获机制
x=Float.parseFloat(t1.getText()); //将字符串数据转换成浮点型数据
y=Float.parseFloat(t3.getText());
op=t2.getText();
if(op.equals("+")) //运算符为"+"
result=x+y;
else if(op.equals("-")) //运算符为"-"
result=x-y;
else if(op.equals("*")) //运算符为"*"
result=x*y;
else if(op.equals("/")) //运算符为"/"
result=x/y;
t4.setText(Double.toString(result));
}catch(Exception ee){t4.setText("数据错误");} //捕获异常,数据错误时,显示信息
}
public static void main(String args[])
{
Calculate mainFrame = new Calculate();
mainFrame.setSize(400, 400);
mainFrame.setTitle("两个数的计算程序");
mainFrame.setVisible(true);
}
}