zoukankan      html  css  js  c++  java
  • GUI 实现简易计算器

    编写代码 TestCalc测试类

    package com.xiang.lesson02;
    
    import java.awt.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    
    //简易 计算器
    public class TestCalc {
        public static void main(String[] args) {
            new Calculator().loadFrame();
        }
    }
    
    //计算器 类
    class Calculator extends Frame {
    
        //属性
        TextField num1, num2, num3;
    
        //方法
        public void loadFrame() {
    //        3 个文本框
            num1 = new TextField(10); //字符数 最大能10个字符
            num2 = new TextField(10); //字符数 最大能10个字符
            num3 = new TextField(20); //字符数 最大能10个字符
    //        一个按钮
            Button button = new Button("=");
            button.addActionListener(new MyCalculatorListener(this));
    //        一个标签
            Label label = new Label("+");
    //        布局
            setLayout(new FlowLayout());
    
            add(num1);
            add(label);
            add(num2);
            add(button);
            add(num3);
    
            pack();
            setVisible(true);
            setBackground(Color.yellow);
            addWindowListener(new WindowAdapter() {
                @Override
                public void windowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });
        }
    
    
    }
    
    //监听器 类
    class MyCalculatorListener implements ActionListener {
        //    需获取计算器这个对象,在一个类中组合另外一个类
        Calculator calculator = null;
    
        public MyCalculatorListener(Calculator calculator) {
            this.calculator = calculator;
        }
    
        @Override
        public void actionPerformed(ActionEvent e) {
    //        1,获取加数和被加数
    //        2, 加法运算后,放入第三个框
            int n1 = Integer.parseInt(calculator.num1.getText());
            int n2 = Integer.parseInt(calculator.num2.getText());
            calculator.num3.setText("" + (n1 + n2));
            //        3,清除前两个框
    //        calculator.num1.setText("");
    //        calculator.num2.setText("");
    
        }
    }
    

    运行结果

  • 相关阅读:
    【零基础】极星9.5套利详解
    【零基础】极星9.3资金字段详解
    【零基础】易盛9.0API入门三:下单并查询订单状态
    【零基础】极星量化扩展一:如何做跨合约的交易
    【零基础】极星9.3止盈止损用法详解
    【零基础】极星9.3几种套利的说明
    【零基础】MT4量化入门三:写一个双均线指标
    概率与似然
    PCA的计算方法
    隐藏节点数的选择
  • 原文地址:https://www.cnblogs.com/d534/p/15109336.html
Copyright © 2011-2022 走看看