Java程序--编写一个具有图形界面的计算器程序

import java.io.*;public class Test implements ActionListener { Frame f = new Frame("一步运算计算器");//创建窗架 TextField[] tf = new TextField[3];Label La1 = new Label("+");Button btn = new Button("=");int[] a = new int[3]; //储存数据 public Test(){ f....
Java程序--编写一个具有图形界面的计算器程序
import java.awt.*;
import java.awt.event.*;
import java.io.*;

public class Test implements ActionListener
{
Frame f = new Frame("一步运算计算器");//创建窗架
TextField[] tf = new TextField[3];
Label La1 = new Label("+");
Button btn = new Button("=");
int[] a = new int[3]; //储存数据

public Test()
{
f.setLayout(new FlowLayout());
f.setSize(400,100);

f.addWindowListener
(
new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
); //窗口关闭事件

btn.addActionListener //输出加法运算结果
(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
tf[2].setText(Integer.toString(a[2]));
}
}
);
for(int i = 0;i<3;i++)
{
tf[i] = new TextField(8);
tf[i].addActionListener(this); //创建文本域,注册事件监听器
}

tf[0].requestFocusInWindow(); //光标定位

f.add(tf[0]);
f.add(La1);
f.add(tf[1]);
f.add(btn);
f.add(tf[2]);
f.show();
}

public void actionPerformed(ActionEvent e)
{
try
{
if(e.getSource()==tf[0])
{
a[0]=Integer.valueOf(tf[0].getText()).intValue();
tf[1].requestFocusInWindow();
}

if(e.getSource()==tf[1])
{
a[1]=Integer.valueOf(tf[1].getText()).intValue();
btn.requestFocusInWindow();
}
a[2] = a[0]+a[1];
}
catch(Exception ex)
{
}
}

public static void main(String[] args) throws Exception
{
Test t = new Test();
}
}
在文本域中输入完后必须按Enter才能完成正确的功能.再按等号按钮输出结果.2007-04-29
你要自己去写啊.
把布局做好.然后给每一个按扭做一个事件..
当点下一个的时候保存上一次的输入.
很简单的啦2007-04-28
mengvlog 阅读 49 次 更新于 2025-10-29 01:57:46 我来答关注问题0
檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部