java图形用户界面设计计算器

设计一个简单计算器,在“操作数”标签右侧的两个文本框输入操作数,当单击操作符+,-,×,÷按钮时,对两个操作数进行运算并将结果填入到“结果”标签右侧的文本框中。... 设计一个简单计算器,在“操作数”标签右侧的两个文本框输入操作数,当单击操作符+,-,×,÷按钮时,对两个操作数进行运算并将结果填入到“结果”标签右侧的文本框中。 展开
 我来答
百度网友976a73f38
2011-11-11
知道答主
回答量:43
采纳率:0%
帮助的人:34.8万
展开全部
这是我以前写的计算器。。。你自己运行看看

package com.jisuanqi.demo;

import java.awt.*;
import java.awt.event.*;

public class Calculator extends WindowAdapter implements ActionListener {
private double result = 0, data1 = 0, radixPointDepth = 1;
private boolean radixPointIndicate = false, resultIndicate = false;
private char prec = '+';
private Frame f;
private TextField tf;
private Button b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14,
b15, b16, b17;
private Panel p;

public static void main(String args[]) {
Calculator de = new Calculator();
// de.go();
}

public Calculator() {
f = new Frame("计算器");
p = new Panel();
p.setLayout(new GridLayout(4, 4));
tf = new TextField(30);
b1 = new Button("7");
b2 = new Button("8");
b3 = new Button("9");
b4 = new Button("+");
b5 = new Button("4");
b6 = new Button("5");
b7 = new Button("6");
b8 = new Button("-");
b9 = new Button("1");
b10 = new Button("2");
b11 = new Button("3");
b12 = new Button("*");
b13 = new Button("0");
b14 = new Button(".");
b15 = new Button("=");
b16 = new Button("/");
b17 = new Button("清零");
f.add(tf, "North");
f.add(p, "Center");
f.add(b17, "South");
p.add(b1);
p.add(b2);
p.add(b3);
p.add(b4);
p.add(b5);
p.add(b6);
p.add(b7);
p.add(b8);
p.add(b9);
p.add(b10);
p.add(b11);
p.add(b12);
p.add(b13);
p.add(b14);
p.add(b15);
p.add(b16);
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
b4.addActionListener(this);
b5.addActionListener(this);
b6.addActionListener(this);
b7.addActionListener(this);
b8.addActionListener(this);
b9.addActionListener(this);
b10.addActionListener(this);
b11.addActionListener(this);
b12.addActionListener(this);
b13.addActionListener(this);
b14.addActionListener(this);
b15.addActionListener(this);
b16.addActionListener(this);
b17.addActionListener(this);
f.addWindowListener(this);
f.setBounds(500,200,250, 190);
f.setVisible(true);
}

public void actionPerformed(ActionEvent e) {
String s;
s = e.getActionCommand();
switch (s.charAt(0)) {
case '0':
case '1':
case '2':
case '3':
case '4':
case '5':
case '6':
case '7':
case '8':
case '9':
if (resultIndicate) {
result = 0;
data1 = 0;
prec = '+';
}
Integer Int1 = new Integer(s);
if (radixPointIndicate) {
radixPointDepth = radixPointDepth / 10;
data1 = data1 + (Int1.intValue()) * radixPointDepth;
} else {
data1 = data1 * 10 + (Int1.intValue());
}
Double displayNumber = new Double(data1);
tf.setText(displayNumber.toString());
resultIndicate = false;
break;
case '+':
case '-':
case '*':
case '/':
case '=':
if (s.charAt(0) != '=' && resultIndicate) {
prec = s.charAt(0);
resultIndicate = false;
} else {
switch (prec) {
case '+':
result = result + data1;
break;
case '-':
result = result - data1;
break;
case '*':
result = result * data1;
break;
case '/':
result = result / data1;
break;
}
}
radixPointIndicate = false;
radixPointDepth = 1;
displayNumber = new Double(result);
tf.setText(displayNumber.toString());
if (s.charAt(0) != '=') {
data1 = 0;
prec = s.charAt(0);
} else {
resultIndicate = true;
}
break;
case '.':
radixPointIndicate = true;
break;
}
if (s.equals("清零")) {
result = 0;
data1 = 0;
radixPointDepth = 1;
tf.setText("0.0");
}
}

public void windowClosing(WindowEvent e) {
System.exit(0);
}
}
AiPPT
2024-09-19 广告
随着AI技术的飞速发展,如今市面上涌现了许多实用易操作的AI生成工具1、简介:AiPPT: 这款AI工具智能理解用户输入的主题,提供“AI智能生成”和“导入本地大纲”的选项,生成的PPT内容丰富多样,可自由编辑和添加元素,图表类型包括柱状图... 点击进入详情页
本回答由AiPPT提供
1004050219
2011-11-11
知道答主
回答量:91
采纳率:0%
帮助的人:24.2万
展开全部
这很简单啊 !
追问
那你写个我看下呀!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式