首页 课程 师资 教程 报名

用Java swing实现计算器

  • 2022-12-15 11:56:10
  • 1622次 动力节点

动力节点小编这次用java的swing来实现计算器。

第一张图:

界面

总体布局采用流式布局。

1.文本框

只有一个文本框 JPanel 添加一个

JTextField.boxField.setLayout(new FlowLayout()); box.setPreferredSize(新维度(300, 25)); boxField.add(框);

JTextField 设置尺寸需要使用 setPreferredSize() 而不是 setSize()。

2.钥匙

Key 4/*4 Grid layout , 逐一添加按钮即可 .

buttonsField.setLayout(new GridLayout(4, 4, 20, 20)); buttonsField.setPreferredSize(新维度(300, 300)); buttonsField.add(xxx); //添加....

鼠标事件

按钮的鼠标事件,想一想,点击一个按钮,然后在文本框中会有相应的响应,相应地添加事件监听

.num0.addActionListener(v -> { box.setText(box.getText() + " 0"); mainFrame.requestFocus(); });

requestFocus()这一行把焦点还给了JFrame,因为鼠标点击button之后,button获得了焦点,会影响后面的键盘监听。

键盘事件

键盘事件和鼠标事件类似,对每个按键进行判断。

这里是一个KeyListener注册到JFrame上面,直接在里面改写下面三个KeyListener方法:

public void keyPressed(KeyEvent e); public void keyReleased(KeyEvent e); public void keyTyped(KeyEvent e);

基本上通过

如果 (e.getKeyCode() == KeyEvent.VK_xxxx)

要确定密钥,唯一需要注意的是 + 和 /*

评价表达

计算表达式部分这里就不细说了。

简单的说,先用GetResult.setExpression();

这个静态方法设置表达式,然后传递

GetResult.valid() 方法

判断是否合法,如果合法则通过

获取结果.result()

获取字符串结果。

测试

选你想看

你适合学Java吗?4大专业测评方法

代码逻辑 吸收能力 技术学习能力 综合素质

先测评确定适合在学习

在线申请免费测试名额
价值1998元实验班免费学
姓名
手机
提交