Java计算器课程设计报告
导入Java . awt . event . *;
导入javax . swing . *;//指南包
类MyClass扩展了JFrame
//创建继承JFrame框架的window类的MyClass类。
//也就是说JFrame中的所有功能都可以通过MyClass来实现。
{
JLabel a1=new JLabel("第一个数");
//创建显示第一个数字的标签。
JLabel a2=new JLabel("第二个数");
JLabel a3=new JLabel("运算结果");
JTextField b 1 = new JTextField(5);
//创建一个默认长度为5的文本框,用于输入操作号,也可以默认为空。
JTextField B2 = new JTextField(5);
JTextField B3 = new JTextField(5);
//创建一个标签来显示操作结果,或者创建一个标签来显示操作结果。
JButton a = new JButton(" plus ");
//创建一个用于加法计算的按钮,点击时添加。
JButton b = new JButton(" MINUS ");
JButton c = new JButton(" multiply ");
JButton d = new JButton(" divide ");
JPanel jp 1 = new JPanel();//创建用于放置控件的面板。
JPanel jp2 = new JPanel();
JPanel jp3 = new JPanel();
MyClass()//构造函数,用于初始化。
{
setLayout(new GridLayout(3,1));//添加四行四列的布局管理器。
jp 1 . set layout(new FlowLayout());//将JP1面板设置为流式布局管理器。
jp 1 . set layout(new FlowLayout());
//向jp1面板添加四个控件A1、B1、A2和B2。
jp 1 . add(a 1);
jp 1 . add(b 1);
jp 1 . add(a2);
jp 1 . add(B2);
jp 1 . add(a3);
//在jp2面板上添加A、B、C、D四个控件。
jp2 . add(a);
jp2 . add(b);
jp2 . add(c);
jp2 . add(d);
jp3 . add(a3);
jp3 . add(B3);
//向窗口添加三个面板JP1、JP2和JP3。
添加(jp 1);
添加(jp3);
添加(jp2);
对象e;
a.addActionListener(新的ActionListener()
//创建匿名事件侦听器
{
@覆盖
public void action performed(action event e){
// TODO自动生成的方法存根
double x = double . value of(b 1 . gettext()。toString());
//获取第一个输入数字,并将其从字符串转换为double。
double y = double . value of(B2 . gettext()。toString());
//获取第二个输入数字,并将其从字符串转换为double。
B3 . settext("+(x+y));
//在文本框b3中显示运算结果。
}
});
b.addActionListener(新的ActionListener()
{
@覆盖
public void action performed(action event e){
// TODO自动生成的方法存根
double x = double . value of(b 1 . gettext()。toString());
double y = double . value of(B2 . gettext()。toString());
B3 . settext("+(x-y));
}
});
c . addactionlistener(new action listener()//创建匿名事件侦听器。
{
@覆盖
public void action performed(action event e){
// TODO自动生成的方法存根
double x = double . value of(b 1 . gettext()。toString());
double y = double . value of(B2 . gettext()。toString());
B3 . settext("+(x * y));
}
});
d . addactionlistener(new action listener()//创建一个匿名事件侦听器。
{
@覆盖
public void action performed(action event e){
// TODO自动生成的方法存根
double x = double . value of(b 1 . gettext()。toString());
double y = double . value of(B2 . gettext()。toString());
//因为0不能除尽,所以这里需要判断。
如果(y==0)
{
B3 . settext(" error ");
}
其他
{
B3 . settext("+(x/y));
}
}
});
//下面是设置窗口的属性
This.setTitle("计算器");//设置窗口的标题。
//this.setSize(400,400);//设置窗口的大小,或者改成this.pack()。
this . pack();
this . setdefaultcloseoperation(DISPOSE _ ON _ CLOSE);//设置关闭属性
this . set visible(true);//设置窗口的可见性
}
公共静态void main (string [] args)//main函数
{
new my class();
}
}