当前位置:

首页 > 编程开发 > java swing怎么实现简单计算器界面

java swing怎么实现简单计算器界面

运用到的知识:1.常用顶层容器JFrame类的使用2.常用中间容器JPanel类的使用3.单行文本框的实现类JTextField类的使用4.按钮的实现类JButton类的使用5.边框布局管理器的使用6.网格布局管理器的使用基本思路:1.创建1个窗口f12.创建1个文本框t13.创建内层面板p3,保存文本框t14.创建16个按钮5.创建内层面板p2,设置为网格布局,用于保存16个按钮6.创建外层面板p1,设置为边框布局,北部保存p3,中部保存p2下面是是具体的代码实现,可以直接运行importjavax.s

本文目录

    运用到的知识:

    1.常用顶层容器 JFrame类 的使用
    2.常用中间容器 JPanel类 的使用
    3.单行文本框的实现类 JTextField类 的使用
    4.按钮的实现类 JButton类 的使用
    5.边框布局管理器 的使用
    6.网格布局管理器 的使用

    基本思路:

    1.创建1个窗口f1
    2.创建1个文本框t1
    3.创建内层面板p3,保存文本框t1
    4.创建16个按钮
    5.创建内层面板p2,设置为网格布局,用于保存16个按钮
    6.创建外层面板p1,设置为边框布局,北部保存p3,中部保存p2

    下面是是具体的代码实现,可以直接运行

    import javax.swing.JFrame;   //顶层容器 (框架)
    import javax.swing.JPanel; //中间容器 (嵌板)最常用的面板
    import javax.swing.JTextField; //单行文本框的实现类
    import javax.swing.JButton;  //按钮
    import javax.swing.border.EmptyBorder; 
    //需要用EmptyBorder类来设置面板的边框属性
    import javax.swing.SwingConstants; 
    //SwingConstants是一个通常用于在屏幕上定位(位置)或定向(方向)组件的常量的集合
    import java.awt.*; //布局管理器的类在这里面
    
    public class calculator
    {
        public static void main(String[] args) 
        {
            JFrame f1 = new JFrame("计算器");  //创建顶层容器(窗口)
            f1.setSize(250, 300);        //设置窗口大小
    
            JPanel p1 = new JPanel(new BorderLayout(5,5)); //创建一个面板
            //里面的new BorderLayout(5,5)是设置面板的布局(边框布局)
            //其中(5,5)的第1个5表示上下控件间距,第2个表示左右控件间距
            
            p1.setBorder(new EmptyBorder(5,5,5,5));   //设置边界距离  border 边界
            //面板的setBorder函数,用于设置面板边缘向内收缩宽度
            //里面的EmtyBorder(5,5,5,5)表示面板上,左,下,右各向内收缩 5个像素
            
            JTextField t1 = new JTextField(); //创建一个单行文本框
            t1.setColumns(10);  //这个用于设置文本框的列数  Columns 列
            t1.setHorizontalAlignment(SwingConstants.RIGHT); //设置文本框右对齐     
            //Horizontal 水平的        Alignment 对齐  记两个单词
            
            JPanel p2 = new JPanel(new GridLayout(4,4,5,5));//创建第二个面板
            //其中设置其布局为网格布局,(第一个4表示1行4个控件)
            //第2个4表示1列4个控件,第1个5表示上下控件间隔为5,第2个5表示左右控件间隔为5(像素)
    
            JButton b1 = new JButton("7");    //创建16个按钮
            JButton b2 = new JButton("8");
            JButton b3 = new JButton("9");
            JButton b4 = new JButton("/");
            
            JButton b5 = new JButton("4");
            JButton b6 = new JButton("5");
            JButton b7 = new JButton("6");
            JButton b8 = new JButton("*");
    
            JButton b9 = new JButton("1");
            JButton b10 = new JButton("2");
            JButton b11 = new JButton("3");
            JButton b12 = new JButton("-");
            
            JButton b13 = new JButton("0");
            JButton b14 = new JButton(".");
            JButton b15 = new JButton("=");
            JButton b16 = new JButton("+");
    
            p2.add(b1);    //将16个按钮全部添加到网格布局的面板p2中
            p2.add(b2);
            p2.add(b3);
            p2.add(b4);
            
            p2.add(b5);
            p2.add(b6);
            p2.add(b7);
            p2.add(b8);
            
            p2.add(b9);
            p2.add(b10);
            p2.add(b11);
            p2.add(b12);
            
            p2.add(b13);
            p2.add(b14);
            p2.add(b15);
            p2.add(b16);
            
            JPanel p3 = new JPanel();   //创建第三个面板,用于保存之前的文本框t1
            p3.add(t1);     //将文本框t1添加到面板p3中
            p1.add(p3,BorderLayout.NORTH);//将p3添加到 为边框布局面板的p1的北部
            p1.add(p2,BorderLayout.CENTER); //将p2添加到面板的中部
            
            f1.add(p1);           //p1面板添加到窗口
            f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置关闭时操作
            f1.setVisible(true);   //设置可见
        }
    }

    运行结果:

    java swing怎么实现简单计算器界面

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    编程开发 Java
    相关文章 更多
    Java单元测试入门:使用JUnit 5编写第一个测试用例
    Java单元测试入门:使用JUnit 5编写第一个测试用例

    面向初学者的JUnit 5实用入门指南。从测试概念、Maven依赖配置,到手把手编写首个单元测试用例及断言验证,助你掌握Java单元测试的核心流程。

    Java变量未初始化报错解析:局部变量与成员变量默认值差异
    Java变量未初始化报错解析:局部变量与成员变量默认值差异

    深入解析Java中局部变量未初始化编译报错与成员变量自动赋予默认值的机制差异,涵盖JVM内存分配、编译期确定性赋值检查与实际排查修复方案。

    Java获取当前时间并格式化输出:DateTimeFormatter与SimpleDateFormat
    Java获取当前时间并格式化输出:DateTimeFormatter与SimpleDateFormat

    详细讲解在Java中获取当前系统时间并进行格式化输出的两种核心方案:基于Java 8全新日期时间API的DateTimeFormatter与传统遗留的SimpleDateFormat,包含完整代码示例、线程安全机制对比及生产选型建议。

    Java中final与static final常量的定义及初始化规则
    Java中final与static final常量的定义及初始化规则

    深入解析Java中final变量与static final常量的定义、内存语义、初始化时机及合法赋值路径,涵盖编译期常量优化与实战避坑指南。

    Java抽象方法与接口方法的区别及选型建议
    Java抽象方法与接口方法的区别及选型建议

    深入对比Java中抽象类抽象方法与接口方法的语法演进、设计意图及运行期差异,并提供清晰的架构选型决策流程与实战范例。

    Java实现HTTP请求与JSON解析的完整代码示例
    Java实现HTTP请求与JSON解析的完整代码示例

    本文提供Java标准库HttpClient发起HTTP GET/POST请求并结合Jackson进行JSON数据反序列化与序列化的完整代码示例与工程实践指南。

    Java递归出现StackOverflowError的原因分析及栈空间优化方案
    Java递归出现StackOverflowError的原因分析及栈空间优化方案

    详细分析Java递归调用出现StackOverflowError的原因,结合代码说明线程栈、栈帧和递归深度之间的关系,并介绍终止条件排查、迭代改写、减少栈帧开销以及通过-Xss调整JVM栈空间的方法。

    Java空指针异常(NPE)的代码排查与修复实例
    Java空指针异常(NPE)的代码排查与修复实例

    针对Java中常见的NullPointerException(NPE),本文从堆栈日志定位、典型代码触发场景、具体修复代码对比到防御体系进行系统讲解,提供实用且易上手的排查与修复方案。

    selenium上传文件教程本地文件路径设置方法
    selenium上传文件教程本地文件路径设置方法

    深入解析Selenium处理文件上传的技术细节,涵盖标准HTML控件的路径直接注入法与非标准控件的系统级模拟方案,提供Windows与Linux环境下的路径设置最佳实践及常见异常排查。

    大数据开发语言选型:Java对比Scala与Python的优缺点及适用场景
    大数据开发语言选型:Java对比Scala与Python的优缺点及适用场景

    针对大数据工程场景,系统对比Java、Scala与Python在执行性能、生态结合、开发效率和维护成本上的核心差异,给出清晰的架构选型依据与落地方案。

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。