java GUI如何实现加法计算器?本篇文章小编给大家分享一下java GUI实现加法计算器代码示例,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
1.写出一个简易计算器需要的组件
2.先出监听事件类
public class TextCalculator01 { public static void main(String[] args) { new MyCalculator(); } } //计算器类 class MyCalculator extends Frame{ public MyCalculator() { //三个文本框 TextField num1 = new TextField(10); TextField num2 = new TextField(10); TextField num3 = new TextField(20); //一个等号 Button button = new Button("="); //实现键盘事件监听 button.addActionListener(new MyCalculatorListener(num1,num2,num3)); //一个标签 Label label = new Label("+"); //布局 setLayout(new FlowLayout());//流式布局 add(num1); add(label); add(num2); add(button); add(num3); setVisible(true); pack(); } } //监听器类 class MyCalculatorListener implements ActionListener{ //获得三个数据 private TextField num1,num2,num3; public MyCalculatorListener(TextField num1,TextField num2,TextField num3) { this.num1= num1; this.num2 = num2; this.num3 = num3; } @Override public void actionPerformed(ActionEvent e) { //获得两个加数 int n1 = Integer.parseInt(num1.getText());//转换成int类型 int n2 = Integer.parseInt(num2.getText()); //前面两个数相加,放入第三个框中 num3.setText(""+(n1 + n2)); //清除前两个框的的内容 num1.setText(""); num2.setText(""); } }
按下等号按键,前两个框的内容会被清除,第三个框输出结果3
优化后的写法(完全面向对象)
//简易计算器 public class TextCalculator { public static void main(String[] args) { new Calculator().loadFrame(); } } class Calculator extends Frame{ //属性,三个文件框组件 TextField num1,num2,num3; //方法 public void loadFrame(){ //需要三个文件框 num1 = new TextField(10); num2 = new TextField(10); num3 = new TextField(20); Button button = new Button("="); Label label = new Label("+"); button.addActionListener(new MyCalautor(this)); //布局 setLayout(new FlowLayout());//流式布局 add(num1); add(label); add(num2); add(button); add(num3); setVisible(true); pack(); } } //监听事件 class MyCalautor implements ActionListener{ //获得计算器这个类,在一个类中组合另一个类 Calculator calculator = null; public MyCalautor(Calculator calculator) { this.calculator = calculator; } @Override public void actionPerformed(ActionEvent e) { //1.获得前面两个数字 // 2.把两个数的相加的结果输入到第三个框 //3.把前两个框的内容清除 int n1 = Integer.parseInt(calculator.num1.getText()); int n2 = Integer.parseInt(calculator.num2.getText()); calculator.num3.setText(""+(n1+n2)); calculator.num1.setText(""); calculator.num2.setText(""); } }
迷你世界越南服 安卓版v1.7.15
迷你世界越南服是一款精美的3D沙盒游戏,拥有极高的创作自由度
糖饼外传内置菜单 安卓版v1.0.87
糖饼外传内置菜单是一款非常好玩的模拟经营类手游,玩家在游戏中
我的世界化学交换空岛整合包 最新版v1.0
我的世界化学交换空岛整合包是一款像素风格的沙盒生存游戏,游戏
创造厨房免广告版 v1.0.10
创造厨房无广告版是一款像素风模拟经营类手游,玩家们将在这里化
SimCity BuildIt无限金币版 安卓修改版v1.60.1.133743
SimCity BuildIt无限金币版是经过破解的版本,在