import java.awt.*;
import java.awt.event.*;用java编写一个简单的计算器
import javax.swing.*;
public class test
{
public static void main(String args[] )
{
jisuan frame = new jisuan();//新建一个jisuan类对象
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//为该对象设置默认关闭动作
frame.setResizable(false);//设置不可调整大小
frame.show();//将该框架对象显示出来
}
}
class jisuan extends JFrame implements ActionListener//jisuan类继承自JFrame类
{
private JMenuBar menubar = new JMenuBar();
private JMenu m1 = new JMenu("文件(field)");
private JMenu m2 = new JMenu("编辑(education)");
private JMenu m3 = new JMenu("帮助(help)");//新建菜单栏
private JMenuItem t2,t3,t4,t7,t8;
private JPanel j1,j2;
private JButton b0,b1,b2,b3,b4,b5,b6,b7,b8,b9;
private JButton kaigen,qiuyu,pingfang,zengxuan,yuxuan ,jiecheng,jia,jian,cheng,chu,dengyu;
private Container contenPane = ContentPane();//获取当前的内容窗格
private JTextField p1,p2;
private JLabel j0;
private double tem1 = 0;
private double tem2 = 0;
private double tem3 = 0;
private int biaozhi=0;
public jisuan() //构造函数
{
super.setTitle("简单计算器");//设置标题
super.setSize(640,200);//设置尺寸
super.setJMenuBar(menubar);
menubar.add(m1);
menubar.add(m2);
menubar.add(m3);
t2 = new JMenuItem("全部清零");
t3 = new JMenuItem("打开圆周率");
t4 = new JMenuItem("退出");
m1.add(t2);
m1.add(t3);
m1.add(t4);
t7 = new JMenuItem("写字本");
m2.add(t7);
t8 = new JMenuItem("关于....");
m3.add(t8);
j1 = new JPanel();
p1 = new JTextField(40);
p1.setEditable(false);
j0 = new JLabel("请输入要计算的数字:");
// p2 = new JTextField("请输入计算的数字",10);
// p3 = new JTextField("结果是",10);
// p3.setEditable(false);
j1.add(j0);
j1.add(p1);
// j1.add(p2);
// j1.add(p3);
j2 = new JPanel();
GridLayout f = new GridLayout(3,7);
//新建一个布局管理器对象
j2.setLayout(f);
//将布局管理器对象加入到面板中
b0 = new JButton("0");
b1 = new JButton("1");
b2 = new JButton("2");
b3 = new JButton("3");
b4 = new JButton("4");
b5 = new JButton("5");
b6 = new JButton("6");
b7 = new JButton("7");
b8 = new JButton("8");
b9 = new JButton("9");// j3 = new JPanel();
j2.add(b0);
j2.add(b1);
j2.add(b2);
j2.add(b3);
j2.add(b4);
j2.add(b5);
j2.add(b6);
j2.add(b7);
j2.add(b8);
j2.add(b9);
jia = new JButton("+");
jian = new JButton("-");
cheng = new JButton("*");
chu = new JButton("/");
kaigen = new JButton("立方根");
qiuyu = new JButton("平方根");
pingfang = new JButton("平方");
zengxuan = new JButton("sin");
yuxuan = new JButton("cos");
jiecheng = new JButton("阶乘");
dengyu = new JButton("=");
j2.add(jia);
j2.add(jian);
j2.add(cheng);
j2.add(chu);
j2.add(kaigen);
j2.add(qiuyu);
j2.add(pingfang);
j2.add(zengxuan);
j2.add(yuxuan);
j2.add(jiecheng);
j2.add(dengyu);
contenPane.add(j2,BorderLayout.CENTER);
//将j2添加到内容窗格中同时为其指定位置
contenPane.add(j1,BorderLayout.NORTH);
b0.addActionListener(this);
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);
jia.addActionListener(this);
jian.addActionListener(this);
cheng.addActionListener(this);
chu.addActionListener(this);
kaigen.addActionListener(this);
qiuyu.addActionListener(this);
pingfang.addActionListener(this);
zengxuan.addActionListener(this);
yuxuan.addActionListener(this);
jiecheng.addActionListener(this);
dengyu.addActionListener(this);
//为按钮添加事件
t2.addActionListener(this);
t3.addActionListener(this);
t4.addActionListener(this);
t7.addActionListener(this);
t8.addActionListener(this);
//JMenuItem类对象添加事件
}
public void actionPerformed(ActionEvent e)
{
Source()==b0)
{
p1.setText("0");
j1.add(p1);
tem1 = 0;
}
else Source() == b1)
{
p1.setText("1");
j1.add(p1);
tem1 = 1;
}
else Source() == b2)
{
p1.setText("2");
j1.add(p1);
tem1 = 2;
}
else Source() == b3)
{
p1.setText("3");
j1.add(p1);
tem1 = 3;
}
else Source() == b4)
{
p1.setText("4");
j1.add(p1);
tem1 = 4;
}
else Source() == b5)
{
p1.setText("5");
j1.add(p1);
tem1 = 5;
}
else Source() == b6)
{
p1.setText("6");
j1.add(p1);
tem1 = 6;
}
else Source() == b7)
{
p1.setText("7");
j1.add(p1);
tem1 = 7;
}
else Source() == b8)
{
p1.setText("8");
j1.add(p1);
tem1 = 8;
}
else Source() == b9)
{
p1.setText("9");
j1.add(p1);
tem1 = 9;
}
Source()==jia)
{
p1.setText(tem1+"+");
j1.add(p1);
tem2 = tem1;
biaozhi = 0;
}
Source()==jian)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论