📄 numcomput.java
字号:
import javax.swing.JFrame; //窗口类
import javax.swing.JButton; //按钮
import javax.swing.JLabel; //标签(本题中的“计算结果”几个字)
import java.awt.FlowLayout; //流式布局
import java.awt.event.ActionEvent; //事件
import java.awt.event.ActionListener; //监听器
import javax.swing.JTextField; //要输入数字的几个小框
import java.lang.NumberFormatException; //处理的异常类
import javax.swing.JOptionPane; //一个对话框,即产生异常时 那个对话框
import javax.swing.UIManager; //风格
public class ComputNum
{
public static void main(String args[])
{
//try--catch语句完全可以去掉,不用他,直接用JAVA的风格,用他可以和你当前的windows风格保持一致
try
{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e)
{
}
ComFrame exampleFrame=new ComFrame(); //初始化一个对象
}
}
//继承NumberFormatException,并实现ActionListener,以便处理事件
class ComFrame extends NumberFormatException implements ActionListener
{
int number_con;
JTextField text_number_1=new JTextField("0",6); //要输入数字的几个小框,第一个数子,初始化为0,可以不写
JTextField text_number_2=new JTextField("0",6); //第二个,6代表小框的大小可以放下6个数字,以下类似
JTextField text_number_3=new JTextField(10); //这个是结果,没有初始值。
JButton addButton=new JButton("加法"); //几个按钮
JButton subButton=new JButton("减法");
JButton mulButton=new JButton("乘法");
JButton divButton=new JButton("除法");
JLabel conLabel=new JLabel("计算结果"); //提示结果的标签
FlowLayout flowout1= new FlowLayout(FlowLayout.LEFT); //采用流式布局
JFrame myFrame=new JFrame(); //建立一个窗口/
ComFrame()
{
myFrame.setTitle("计算窗口"); //标题
myFrame.setSize(260,100); //大小,你可以自己调整
myFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗口时
myFrame.setResizable(false); //固定住窗口大小,你可以去掉,然后来回拉伸窗口大小
myFrame.getContentPane().setLayout(flowout1); //应用布局
myFrame.getContentPane().add(text_number_1); //添加Object到窗口中,注意顺序
myFrame.getContentPane().add(text_number_2);
myFrame.getContentPane().add(conLabel);
myFrame.getContentPane().add(text_number_3);
myFrame.getContentPane().add(addButton); //添加几个按钮到窗口
myFrame.getContentPane().add(subButton);
myFrame.getContentPane().add(mulButton);
myFrame.getContentPane().add(divButton);
addButton.addActionListener(this); //四个按钮添加事件监听器
subButton.addActionListener(this);
mulButton.addActionListener(this);
divButton.addActionListener(this);
myFrame.setVisible(true); //使窗口可见
}
public void actionPerformed(ActionEvent e)
{
try
{
//我为了省事,把全部的值都弄成double型的了,其实只要把除法那个弄成double,其他的应该是int型的
//所以现在的结果只有小数的,你可以自己该该,很简单的。
double a=Double.parseDouble(text_number_1.getText()); //从第一个小框中获得内容并转化成double型的数值
double b=Double.parseDouble(text_number_2.getText());//第二个
//四个if分别判断鼠标到底按了那个按钮
if(e.getSource()==addButton)
{
text_number_3.setText(String.valueOf(a+b));//计算,并把结果再转化成String型,在第三个小框中显示,以下类似
}
if(e.getSource()==subButton)
{
text_number_3.setText(String.valueOf(a-b));
}
if(e.getSource()==mulButton)
{
text_number_3.setText(String.valueOf(a*b));
}
if(e.getSource()==divButton)
{
text_number_3.setText(String.valueOf(a/b));
}
}catch(NumberFormatException ex)
{
//如果发生NumberFormatException异常,弹出一个对话框提示,并把三个小框的内容清为空。
JOptionPane.showMessageDialog(null,"异常(NumberFormatException)发生,对不起,请重新输入");
//你可以自己设置
text_number_1.setText(""); //第一个数的小框
text_number_2.setText(""); //第二个数的小框
text_number_3.setText(""); //结果的小框
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -