📄 jsq.java
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MyApp extends JFrame//定义主类 MyApp
implements ActionListener//接口继承 常用事件处理
{
JButton Button_Add=new JButton("+"); //定义按钮“+”
JButton Button_Del=new JButton("-"); //定义按钮"-"
JButton Button_Div=new JButton("/"); //定义按钮"/"
JButton Button_Mul=new JButton("*"); //定义按钮"*"
JButton Button_Equ=new JButton("="); //定义按钮"="
JTextField TextField=new JTextField(10);//创建输入单行文本区域对象
JPanel Panel=new JPanel();
float Left,Right,Result; //保存数值
int Type;//运算类型标示
int temp;
//super("北京工业大学 实验学院 计算机科学与技术系 计算器 00507307 曾毅");
public void actionPerformed(ActionEvent e)//对用户输入做出响应
{
if(e.getSource()==Button_Add)
{
Left=Float.parseFloat(TextField.getText()); //保存第一操作数
TextField.setText("");//窗口内容重填
Type=1;
}
if(e.getSource()==Button_Equ)
{
switch(Type)
{
case 1:
Right=Float.parseFloat(TextField.getText());//保存第二操作数
Result=Left+Right; //计算结果
temp=(int)Result;
if((float)temp==Result)
TextField.setText(Integer.toString(temp));
else
TextField.setText(Float.toString(Result));//输出结果
break;
case 2:
Right=Float.parseFloat(TextField.getText());//保存第二操作数
Result=Left-Right; //计算结果
temp=(int)Result;
if((float)temp==Result)
TextField.setText(Integer.toString(temp));
else
TextField.setText(Float.toString(Result));//输出结果
break;
case 3:
Right=Float.parseFloat(TextField.getText());//保存第二操作数
Result=Left*Right; //计算结果
temp=(int)Result;
if((float)temp==Result) //判断浮点数是否可以直接转换为整形数
TextField.setText(Integer.toString(temp));
else
TextField.setText(Float.toString(Result));//输出结果
break;
case 4:
Right=Float.parseFloat(TextField.getText());//保存第二操作数
Result=Left/Right; //计算结果
temp=(int)Result;
if((float)temp==Result)
TextField.setText(Integer.toString(temp));
else
TextField.setText(Float.toString(Result));//输出结果
break;
}
}
if(e.getSource()==Button_Del)
{
Left=Float.parseFloat(TextField.getText()); //保存第一操作数
TextField.setText("");//窗口内容重填
Type=2;
}
if(e.getSource()==Button_Mul)
{
Left=Float.parseFloat(TextField.getText()); //保存第一操作数
TextField.setText("");//窗口内容重填
Type=3;
}
if(e.getSource()==Button_Div)
{
Left=Float.parseFloat(TextField.getText()); //保存第一操作数
TextField.setText("");//窗口内容重填
Type=4;
}
}
public MyApp()//对对象初始化
{
super("北京工业大学 实验学院 计算机科学与技术系 四则运算计算器 00507307 曾毅");
this.addWindowListener (new WindowAdapter(){
public void windowClosing(WindowEvent e){
dispose();
System.exit(0);
}
});
Button_Add.addActionListener(this);//事件监听
Button_Del.addActionListener(this);//事件监听
Button_Div.addActionListener(this);//事件监听
Button_Mul.addActionListener(this);//事件监听
Panel.setLayout(new FlowLayout());//流水式布局风格
Panel.add(Button_Add);//将Button_Add加入窗口
Panel.add(Button_Del);//将Button_Del加入窗口
Panel.add(Button_Div);//将Button_Div加入窗口
Panel.add(Button_Mul);//将Button_Mut加入窗口
Button_Equ.addActionListener(this);//事件监听
Panel.add(Button_Equ);//将Button_Equ加入窗口
Panel.add(TextField);//将TextField加入窗口
getContentPane().add(Panel);//将Panel加入窗口
}
public static void main(String args[])//定义主类中的main方法
{
System.out.println("Starting App");
MyApp f = new MyApp();
f.setSize(650,150);
f.show();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -