IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 简单计算器的实现(组合内部类) -> 正文阅读

[移动开发]简单计算器的实现(组合内部类)

整个代码的结构就是一个启动一个类
在这里插入图片描述
计算器类里通过组合以及内部类最大化简化代码
在这里插入图片描述

package GUI;

import Myutil.Constant;

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 EasyCalculator {
    public static void main(String[] args) {
        new Calculator().loadFrame();
    }
}

class Calculator extends Frame{

    //属性
    TextField num1,num2,num3;
    //方法
    public void loadFrame(){
        //关闭窗口
        addWindowListener(new WindowAdapter() {
            @Override
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });


        /*****************简单计算器的实现*******************/
        //三个文本框
        num1 = new TextField(10);//字符数
        num2 = new TextField(10);
        num3 = new TextField(20);
        //一个标签
        Label label = new Label("+");
        //一个按钮
        Button button = new Button("=");
        setLayout(new FlowLayout());
        setBounds(Constant.FRAME_X,Constant.FRAME_Y,Constant.FRAME_WIDTH,Constant.FRAME_HEIGHT);
//        button.addActionListener(new MyCal_ActionListener(num1,num2,num3));
        //使用组合的方法
        button.addActionListener(new MyCal_ActionListener());
        add(num1);
        add(label);
        add(num2);
        add(button);
        add(num3);
        pack();

        setVisible(true);
    }

    /**
     * 内部类--监听器类
     * 内部类最大的好处就是可以畅通无阻地访问外部地属性和方法
     */
    private class MyCal_ActionListener implements ActionListener{
        @Override
        public void actionPerformed(ActionEvent e) {
            int n_1 = Integer.parseInt(num1.getText());
            int n_2 = Integer.parseInt(num2.getText());
            String s = Integer.toString(n_1 + n_2);
            num3.setText(s);
        }
    }
}


常量类(好习惯封装常量类)

package Myutil;

import java.awt.*;

public class Constant {
    //************设置Frame基本属性
    public static final int FRAME_WIDTH = 750;
    public static final int FRAME_HEIGHT =400;
    public static final int SCREEN_W = Toolkit.getDefaultToolkit().getScreenSize().width;
    public static final int SCREEN_H = Toolkit.getDefaultToolkit().getScreenSize().height;
    public static final int FRAME_X = SCREEN_W-FRAME_WIDTH>>1;//设置居中(屏幕分辨率-窗口宽)/2
    public static final int FRAME_Y = SCREEN_H-FRAME_HEIGHT>>1;//设置居中(屏幕分辨率-窗口高)/2
}

简单计算器的实现(组合内部类)

在这里插入图片描述

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-05-06 11:10:03  更:2022-05-06 11:10:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 22:40:48-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码