Java基础-组件及事件处理(下)
(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹)
目录
面板组件
说明
常见组件
JScrollPane常用构造方法
JScrollPane设置面板滚动策略的方法
JScrollPane滚动策略常量值
文本组件
定义
JTextField
定义
常用构造方法:
示例
JTextArea
定义
常用构造方法
示例:
标签组件
定义
说明:
构造方法:
示例:
按钮组件
说明
AbstractButton常用方法
JCheckBox
说明
常用构造方法
JRadioButton
说明
常用构造方法
面板组件
说明
Swig组件中供了一些面板组件(中间容器),这些面板组件不能单独存在,只能放置在顶级窗口容器中。
常见组件
JPanel
JPanel面板组件是一个无边框,不能被移动、放大、缩小或者关闭的面板,它的默认布局管理器是FlowLayout。
JScrollPane:JScrollPane是一个带有滚动条的面板容器,且只能添加一个组件;想向JScrollPane面板中添加多个组件,应先将这多个组件添加到某个组件中,然后再将这个组件添加到JScrollPane中。
JScrollPane常用构造方法
说明:第三个构造方法,是在第二个构造方法的基础上指定滚动条策略。如果在构造方法中没用指定显示组件和滚动条策略,也可以使用JScrollPane提供的方法进行设置。
JScrollPane设置面板滚动策略的方法
说明:
上述表格方法是JScrollPane滚动面板组件对象提供的设置滚动策略的方法。
滚动策略方法取值可以使用ScrollPaneConstants:接口中声明了多个常量属性来进行设置。
JScrollPane滚动策略常量值
文本组件
定义
文本组件用于接收用户输入的信息,包括文本框(JTextField)、文本域(JTextArea)等。
说明:
它们都有一个共同父类JTextComponent,JTextComponent是一个抽象类。
常用方法:
JTextField
定义
JTextField称为文本框,它只能接收单行文本的输入。
常用构造方法:
说明:
JTextField有一个子类JPasswordField,表示一个单行输入密码框。
在此框中是通过显示指定的回显字符作为占位符。
新创建的密码框默认的回显字符为“*”。
示例
import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JTextField;
import javax.swing.JLabel;
public class JTextDemo01
{public static void main(String args[]){JFrame frame = new JFrame("测试单行文本组件JTextField");//文本组件长度30JTextField name = new JTextField(30);//带默认内容的文本组件,长度10JTextField noed = new JTextField("默认文本", 10);JLabel nameLab = new JLabel("输入用户姓名:");JLabel noedLab = new JLabel("不可编辑文本:");//设置组件的长度name.setColumns(30);noed.setColumns(10);//设置默认文本组件不可编辑noed.setEnabled(false); //使用网格布局frame.setLayout(new GridLayout(2, 2));frame.add(nameLab);frame.add(name);frame.add(noedLab);frame.add(noed);frame.setSize(400, 100);frame.setLocation(300, 200);frame.setVisible(true);}
}
运行效果
JTextArea
定义
JTextArea称为文本域,它能接收多行文本的输入,使用JTextArea构造方法创建对象时可以设定区域的行数、列数。
常用构造方法
示例:
import javax.swing.JFrame;
import javax.swing.JTextArea;
import javax.swing.JLabel;
public class JTextAreaDemo01
{public static void main(String args[]){JFrame frame = new JFrame("使用文本域");//设置文本域的行数,列数JTextArea jtextarearea = new JTextArea(3, 20); // 设置大小JLabel lab = new JLabel("多行文本域:");//设置标签大小lab.setBounds(10, 10, 120, 20);//设置文本域的大小jtextarearea.setBounds(100, 10, 200, 140);//取消布局管理器,使用绝对定位frame.setLayout(null); // 取消布局管理器frame.add(lab);frame.add(jtextarearea);frame.setSize(400, 200);frame.setLocation(300, 200);frame.setVisible(true);}
}
运行效果:
标签组件
定义
Swig中提供了用于仅供展示的标签组件。
说明:
标签组件主要用到的是JLabel,JLabel组件可以显示文本、图像,还可以设置标签内容的垂直和水平对齐方式。
构造方法:
示例:
import javax.swing.*;public class JLabelDemo {public static void main(String[] agrs) {JFrame frame=new JFrame("Java标签组件示例"); //创建Frame窗口JPanel jp=new JPanel(); //创建面板JLabel label1=new JLabel("普通标签"); //创建标签JLabel label2=new JLabel();label2.setText("调用setText()方法");ImageIcon img=new ImageIcon("a.png"); //创建一个图标//创建既含有文本又含有图标的JLabel对象JLabel label3=new JLabel("开始理财",img,JLabel.CENTER);jp.add(label1); //添加标签到面板jp.add(label2);jp.add(label3);frame.add(jp);frame.setBounds(300,200,400,400);frame.setVisible(true);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}
}
运行结果:
按钮组件
说明
在Swing中常见的按钮组件有JButton、JCheckBox、JRadioButton等,它们都是抽象类AbstractButton:类的直接或间接子类。
AbstractButton常用方法
JCheckBox
说明
JCheckBox组件被称为复选框组件,它有选中和未选中两种状态,通常复选框会有多个,用户可以选中其中一个或者多个。
常用构造方法
说明除了上述构造方法,还可以调用从父类继承的set Text(String text)来设置
复选框文本信息,调用setSelected(boolean b)方法来设置复选框状态(是否被
选中),也可以调用isSelected(方法来判断复选框是否被选中。
JRadioButton
说明
JRadioButton:组件被称为单选按钮组件,单选按钮只能选中一个。
使用:
要JRadioButton按钮之间的互斥,需要使用ButtonGroup类。
ButtonGroup是一个不可见的单选按钮组。将多个JRadioButton按钮添加到同一个单选按钮组中就能实现JRadioButton按钮的单选功能。
常用构造方法
相关文章:

Java基础-组件及事件处理(下)
(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹) 目录 面板组件 说明 常见组件 JScrollPane常用构造方法 JScrollPane设置面板滚动策略的方法 JScrollPane滚…...

npm list -g --depth=0(用来列出全局安装的所有 npm 软件包而不显示它们的依赖项)
您提供的命令 npm list -g --depth0 是在 Node Package Manager (npm) 的上下文中使用的,用来列出全局安装的所有 npm 软件包而不显示它们的依赖项。 这是它的运作方式: npm list -g --depth0-g: 指定列表应包括全局安装的软件包。--depth0: 限制树形结…...
深度学习:nn.Linear
nn.Linear 是 PyTorch 中的一个线性层(全连接层),用于将输入张量从一个维度空间映射到另一个维度空间。具体来说,nn.Linear 执行以下操作: outputinputweightTbias 其中: input 是输入张量。 weight 是权重…...

大数据新视界 -- 大数据大厂之 Impala 性能提升:高级执行计划优化实战案例(下)(18/30)
💖💖💖亲爱的朋友们,热烈欢迎你们来到 青云交的博客!能与你们在此邂逅,我满心欢喜,深感无比荣幸。在这个瞬息万变的时代,我们每个人都在苦苦追寻一处能让心灵安然栖息的港湾。而 我的…...
常用的Anaconda Prompt命令行指令
一、环境管理 查看已安装的环境 conda env list 或 conda info --envs:列出所有已安装的Anaconda环境。 创建新环境 conda create -n env_name pythonx.x:创建一个名为env_name的新环境,并指定Python版本为x.x。 激活环境 conda activate env…...

如何低成本、零代码开发、5分钟内打造一个企业AI智能客服?
传统客服因员工效率低、时段需求波动大、数据管理费时费力等管理难题,导致难以满足用户需求,无法深入挖掘客服数据价值,造成客源流失。而智能体搭建的“智能客服”能借助大模型和知识库知识,助力实现数字化运营,破解企…...

全网最全最新最细的MYSQL5.7下载安装图文教程
一、MYSQL两种安装包格式 MySQL安装文件分为两种,一种是msi格式的,一种是zip格式的。zip格式相当于绿色版,不需要安装,只需解压缩之后就可以使用了,但是要进行配置。msi格式是安装版。 二、MYSQL官网下载 1.官网地址…...
NoSQL数据库与关系型数据库的主要区别
NoSQL数据库与关系型数据库在多个方面存在显著区别,以下是对这些主要区别的详细描述: 一、数据存储模型 关系型数据库:使用表格形式存储数据,每个表格由行和列组成,行表示记录,列表示字段。数据之间的关系…...

ubuntu24.04安装matlab失败
又是摸鱼摆烂的一天,好难过~ 官方教程:https://ww2.mathworks.cn/help/install/ug/install-products-with-internet-connection.html 问题描述:https://ww2.mathworks.cn/matlabcentral/answers/2158925-cannot-install-matlab-r2…...
Oracle 11g rac 集群节点的修复过程
Oracle 11g rac 集群节点的修复过程 目录 Oracle 11g rac 集群节点的修复过程一、问题的产生二、修复过程1、执行 roothas.pl 命令2、执行 root.sh 命令3、查看集群信息4、查看节点2的IP地址5、查看节点2的监听信息 一、问题的产生 用户的双节点 Oracle 11g rac 集群ÿ…...

c++:string(一)
文章目录 一string类1C语言中的字符串2C中的string二遍历1[ ]2迭代器3const迭代器4范围for5auto6总结三String的尾插1size和length2max_size,capacity和clear3访问接口4尾插字符和字符串5 append的重载三string的扩容问题(1)怎么扩容(2&#…...
github和Visual Studio
1、代码下载和提交 GitHubDesktopSetup-x64.exe 使用很简单,自己稍微琢磨下就明白了。 2、Visual Studio 2022 2.1 安装组件及学习内容 Visual Studio 中的 CMake 项目 | Microsoft Learn 2.2 打开 CMakeLists.txt 文件 定位并选择 CMakeLists.txt 文件 …...
django框架-settings.py文件的配置说明
以下是一些Django的核心配置和其默认值. 下面列出了contrib应用提供的配置, 后面是核心配置的专题索引. 关于介绍性资料, 详见 settings指南. ABSOLUTE_URL_OVERRIDES 默认值: {} (空字典) 它是一个将 “app_label.model_name” 字符串映射到接受模型对象并返回其URL的函数的…...
【C语言】缺陷管理流程
请解释一下缺陷管理流程,包括缺陷的发现、跟踪、验证和关闭等环节。 缺陷管理流程是一种软件质量保证过程,其目的是识别、记录、分析、解决并最终消除程序中的错误或问题。以下是这个流程的主要步骤: 缺陷发现 (Bug Discovery): 这通常是通过…...
基于深度学习的猫狗识别
基于深度学习的猫狗识别是计算机视觉领域中的一个经典问题,它主要利用深度学习技术来训练和构建模型,以便能够自动区分和识别图像中的猫和狗。以下是一个基于深度学习的猫狗识别的简要介绍: 一、数据集准备 要实现猫狗识别,首先需…...

java组件安全
Solr 默认端口:8983 命令执行(cve-2019-17558) 影响版本:5.0.0-8.3.1 https://github.com/jas502n/solr_rce 远程命令执行(cve-2019-0193) 影响版本:<8.2.0 条件:DataImport…...

【MongoDB】MongoDB的核心-索引原理及索引优化、及查询聚合优化实战案例(超详细)
文章目录 一、数据库查询效率问题引出索引需求二、索引的基本原理及作用(一)索引的创建及数据组织(二)不同类型的索引(三)索引的额外属性 三、索引的优化与查询计划分析(一)通过prof…...

qt QProcess详解
1、概述 QProcess是Qt框架提供的一个类,它用于在应用程序中执行外部进程。QProcess提供了一系列函数来启动、控制和与外部进程进行交互,使得开发者能够在自己的应用程序中集成和调用其他程序或服务。这个类在需要执行系统命令、启动其他应用程序或进行文…...

软件测试面试2024最新热点问题
大厂面试热点问题 1、测试人员需要何时参加需求分析? 如果条件循序 原则上来说 是越早介入需求分析越好 因为测试人员对需求理解越深刻 对测试工作的开展越有利 可以尽早的确定测试思路 减少与开发人员的交互 减少对需求理解上的偏差 2、软件测试与调试的关系 测…...

10款录屏工具推荐,聊聊我的使用心得!!!!
录屏软件已经成为我们的得力助手。不管是学习还是培训,或者工作会议等都时常需要录屏操作。经过深入实践和对比,我尝试了多款录屏软件。现在,我就来聊聊我个人使用过的几款录屏软件:我会尽量用最通俗的语言,分享我对这…...
DeepSeek 赋能智慧能源:微电网优化调度的智能革新路径
目录 一、智慧能源微电网优化调度概述1.1 智慧能源微电网概念1.2 优化调度的重要性1.3 目前面临的挑战 二、DeepSeek 技术探秘2.1 DeepSeek 技术原理2.2 DeepSeek 独特优势2.3 DeepSeek 在 AI 领域地位 三、DeepSeek 在微电网优化调度中的应用剖析3.1 数据处理与分析3.2 预测与…...

UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...

安宝特方案丨船舶智造的“AR+AI+作业标准化管理解决方案”(装配)
船舶制造装配管理现状:装配工作依赖人工经验,装配工人凭借长期实践积累的操作技巧完成零部件组装。企业通常制定了装配作业指导书,但在实际执行中,工人对指导书的理解和遵循程度参差不齐。 船舶装配过程中的挑战与需求 挑战 (1…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)
安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...

Golang——9、反射和文件操作
反射和文件操作 1、反射1.1、reflect.TypeOf()获取任意值的类型对象1.2、reflect.ValueOf()1.3、结构体反射 2、文件操作2.1、os.Open()打开文件2.2、方式一:使用Read()读取文件2.3、方式二:bufio读取文件2.4、方式三:os.ReadFile读取2.5、写…...

Python 实现 Web 静态服务器(HTTP 协议)
目录 一、在本地启动 HTTP 服务器1. Windows 下安装 node.js1)下载安装包2)配置环境变量3)安装镜像4)node.js 的常用命令 2. 安装 http-server 服务3. 使用 http-server 开启服务1)使用 http-server2)详解 …...
OD 算法题 B卷【正整数到Excel编号之间的转换】
文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的:a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...

【堆垛策略】设计方法
堆垛策略的设计是积木堆叠系统的核心,直接影响堆叠的稳定性、效率和容错能力。以下是分层次的堆垛策略设计方法,涵盖基础规则、优化算法和容错机制: 1. 基础堆垛规则 (1) 物理稳定性优先 重心原则: 大尺寸/重量积木在下…...