一个计算器calculator的界面(初级)没有任何功能,只为熟悉GUI的awt的各种用法

package learnAWT;

import java.awt.*;
import java.awt.event.*;

import javax.swing.*;

public class Calculator {
    Frame f = new Frame("Calculator");
    // 进制单选框组
    // 弧度单选框组
    CheckboxGroup cbg1 = new CheckboxGroup();
    Checkbox Hex = new Checkbox("Hex", cbg1, true);
    Checkbox Decimal = new Checkbox("Decimal", cbg1, true);
    Checkbox Octal = new Checkbox("Octal", cbg1, true);
    Checkbox Binary = new Checkbox("Binary", cbg1, true);
    // 顶端的三个复选框
    Choice Twochooser = new Choice();
    Choice Twochooser2 = new Choice();
    Choice Twochooser3 = new Choice();
    // 角度制与弧度制
    CheckboxGroup cbg2 = new CheckboxGroup();
    Checkbox Angle_system = new Checkbox("Angle_system", cbg2, true);
    Checkbox Radians = new Checkbox("Radians", cbg2, true);
    // 显示框
    TextField showName = new TextField(80);
    // 上当功能,双曲线函数
    Checkbox Fooled_function = new Checkbox("Fooled_function", false);
    Checkbox Hyperbolic_functions = new Checkbox("Hyperbolic_functions", false);
    // 键盘部分数组
    String[] name = "1 2 3 4 取余 与 5 6 7 8 取整 或 9 0 + - 左移 非 * / . = 异或 +/- A B C D E F"
            .split(" ");
    String[] function = "PI E d.ms ( ) ln sin x^y log cos x^3 n! tan x^2 1/x"
            .split(" ");
    String[] lie = "清存 取存 储存 累存 积存".split(" ");

    // 析构函数
    public Calculator() {
        init();
    }

    public void init() {
        // 计算器类型--复选框1
        Twochooser.add("Scientific");
        Twochooser.add("Ordinary");
        Twochooser.add("Programmer");
        Twochooser.add("Statistics");
        Twochooser.add("History");
        Twochooser.add("Basic");
        Twochooser.add("Unit Conversion");
        Twochooser.add("Data");
        Twochooser.add("WorkSheet");
        //编辑--复选框2
        Twochooser2.add("Edite");
        Twochooser2.add("paset");
        Twochooser2.add("History");
        //帮助--复选框3
        Twochooser3.add("Help");
        Twochooser3.add("View Help");
        Twochooser3.add("About Calculator");
        Panel p1_1 = new Panel();
        Panel p2_1 = new Panel();
        Panel TwochooserPaneAll = new Panel();
        //复选框的实现
        TwochooserPaneAll.add(Twochooser);
        TwochooserPaneAll.add(Twochooser2);
        TwochooserPaneAll.add(Twochooser3);
        //
        p1_1.add(TwochooserPaneAll, BorderLayout.NORTH);
        f.add(p1_1, BorderLayout.NORTH);
        Panel p2 = new Panel();

        p2.add(new TextField(80));
        p2_1.add(p2, BorderLayout.NORTH);
        // p11.add(p2,BorderLayout.NORTH);

        // 以上为上部
        Panel p3_1 = new Panel();
        Panel p3_2 = new Panel();
        Panel p3_3 = new Panel();

        p3_1.add(Fooled_function);
        p3_1.add(Hyperbolic_functions);
        p3_2.add(new Button("table"), BorderLayout.WEST);
        p3_2.add(new Button("clear"));
        p3_2.add(new Button("clearAll"), BorderLayout.EAST);
        p3_3.add(p3_1, BorderLayout.WEST);
        // p10是进制和角度制模块
        p2_1.add(p3_3);
        p3_3.add(p3_2, BorderLayout.EAST);

        Panel p3 = new Panel();
        p3.add(Hex);
        p3.add(Decimal);
        p3.add(Octal);
        p3.add(Binary);
        p3.add(Angle_system);
        p3.add(Radians);
        // p3是进制转换模块

        p2_1.add(p3, BorderLayout.SOUTH);
        f.add(p2_1);
        // f.add(p3,BorderLayout.SOUTH);
        Panel p4_4 = new Panel();
        Panel p4_1 = new Panel();
        Panel p4_2 = new Panel();
        Panel p4_3 = new Panel();
        p4_1.setLayout(new GridLayout(5, 6));
        p4_2.setLayout(new GridLayout(5, 3));
        p4_3.setLayout(new GridLayout(5, 1));

        for (int i = 0; i < name.length; i++) {
            p4_1.add(new Button(name[i]));
        }
        for (int i = 0; i < function.length; i++) {
            p4_2.add(new Button(function[i]));
        }
        for (int i = 0; i < lie.length; i++) {
            p4_3.add(new Button(lie[i]));
        }
        // p4_4.add(p3,BorderLayout.NORTH);
        // p4为键盘模块
        p4_4.add(p4_2, BorderLayout.WEST);
        p4_4.add(p4_3);
        p4_4.add(p4_1, BorderLayout.CENTER);

        f.add(p4_4, BorderLayout.SOUTH);
        f.setSize(450, 340);
        myEvent();
        f.setVisible(true);
    }

    private void myEvent() {
        f.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });
    }
    
    public static void main(String[] args) {
        new Calculator();
    }
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值