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按钮的单选功能。

常用构造方法

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/44921.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

为什么广告需要教育视频

教育视频作为一种广告工具越来越受欢迎,因为它们能够有效地传达信息并吸引观众的注意力。以下是需要此类视频的几个关键原因: 提高参与度 互动性:教育视频吸引注意力,让观众长时间参与,并让他们参与学习过程。产品演…

测试用例设计思路与常用方法

作为测试人员,测试用例设计在工作中的占比是很高的,而且是非常重要的一步,测试用例设计的好坏关系到测试执行过程中的场景覆盖是否完全,最后体现到测试质量是否有保障,所以在这一步做好了不仅能够提高测试效率&#xf…

Windows中安装部署MinIo文件系统,在Spring Boot中引入MinIo依赖实现上传文件到MinIo文件系统中

minio安装部署可以看这篇教程&#xff1a;https://blog.csdn.net/qq_43108153/article/details/134016896 创建桶 将私有设置成公开 导入依赖 <!-- minio --> <dependency><groupId>io.minio</groupId><artifactId>minio</artifactId>…

【后端开发实习】用Nodejs操作mongodb结合Mongoose实现数据库操作

用Nodejs操作mongodb结合Schema实现数据库操作 Mongoose创建Schema定义Schema对象并映射到数据库Model的使用创建文档内容删除文档内容修改文档内容查询文档内容 Document的使用创建并保存将文档对象转换为JSON对象 模块化数据库连接模型初始化 项目部署路由定义后端操作定义启…

如何评价《沧浪之水》这本书?

1、我一辈子的经验就是不要做瞎子&#xff0c;要把事情看清楚&#xff0c;也不能做聋子&#xff0c;该听到的信息要听到&#xff0c;但是要做哑巴&#xff0c;看到了听到了心中有数就行了&#xff0c;可千万别张口说什么。 2、说是人人平等&#xff0c;那是安慰小人物的神话&am…

基于MATLAB的PEF湍流风场生成器模拟与仿真

目录 1.课题概述 2.系统仿真结果 3.核心程序与模型 4.系统原理简介 5.完整工程文件 1.课题概述 基于MATLAB的PEF湍流风场生成器模拟与仿真。PEF&#xff08;Primitive Equations Formulation&#xff09;湍流风场模型&#xff0c;是大气科学和气象学中用来描述大气流动和气…

使用django-haystack+whoosh实现全文搜索

前言 好像是上个星期在写代码的时候遇到了一些问题&#xff0c;这个问题似乎我之前也遇到过&#xff0c;印象中好像也写博客进行记录了的&#xff0c;于是就想在我的博客系统中“查找”&#xff08;表示很无奈居然没有搜索功能&#x1f979;&#x1f979;&#xff09;&#xff…

Redis 主从复制,、哨兵与集群

目录 一.redis主从复制 1.redis 主从复制架构 2.主从复制特点 3.主从复制的基本原理 4.命令行配置 5.实现主从复制 6.删除主从复制 7.主从复制故障恢复 8.主从复制完整过程 9.主从同步优化配置 二.哨兵模式&#xff08;Sentinel&#xff09; 1.主要组件和概念 2.哨…

[240711] OpenSSF Scorecard - 自动评估开源项目安全风险的工具

目录 OpenSSF Scorecard - 自动评估开源项目安全风险的工具功能特点使用场景安装和使用竞品和相关项目进一步探索 OpenSSF Scorecard - 自动评估开源项目安全风险的工具 OpenSSF Scorecard 是一个由开源安全基金会&#xff08;Open Source Security Foundation&#xff0c;Ope…

初学SpringMVC之 RestFul 风格、重定向和转发

RestFul 风格改变 URL 形式 比如之前是&#xff1a;http://localhost:8080/add?a1&b2 现在是&#xff1a;http://localhost:8080/add/a/b&#xff08;全是斜杠&#xff09; package com.demo.controller;import org.springframework.stereotype.Controller; import org…

odoo细分权限(根据业务需求)

odoo原生权限编写方式: 根据用户组分配权限 id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink access_sale_order,sale.order,model_sale_order,sales_team.group_sale_salesman,1,1, 1,0 access_sale_order_manager,sale.order.manager,model_…

kaggle提交csv文件

使用colab完成实验后 将要提交的csv文件拖到kaggle网站自己加入的competition就行 如果kaggle网站无法注册&#xff0c;往往是人机验证问题&#xff1a; kaggle网站验证

邮票孔是什么?和V割有什么区别?

邮票孔&#xff0c;也称为安装孔或通孔&#xff0c;是 PCB 中的圆形或非圆形开口&#xff0c;旨在允许将组件或 PCB 本身连接到支撑结构上。这些孔通常从顶面到底部钻穿或冲穿 PCB 层&#xff0c;形成连续的通道。冲压孔有各种尺寸和形状&#xff0c; 取决于 PCB 及其所容纳组件…

餐饮渠道年销4.2亿盒,光明look 30亿的极致大单品是如何策划的?

餐饮渠道年销4.2亿盒&#xff0c;光明look 30亿的极致大单品是如何策划的&#xff1f; 红酒代理业务下滑&#xff0c;从餐饮渠道主攻奶品类 雨帆食品集团&#xff0c;自2002年起是湖北地区红酒代理商&#xff0c;同时兼任光明乳业湖北荆州代理商。然而&#xff0c;到了2011年&a…

python--实验 9 类和对象

知识点 面向对象编程思想 面向对象编程是一种编程范式&#xff0c;它使用“对象”来设计软件&#xff0c;这些对象可以包含数据和代码&#xff0c;即属性和方法。 面向对象的程序设计的核心是对象,世间存在的万物皆为对象&#xff08;上帝式思维&#xff09; 面向对象&#xf…

TomCat服务器安装和配置教程

1.TomCat下载路径 TomCat官方网站&#xff1a;http://tomcat.apache.org 前往该网站下载安装tomcat&#xff0c;tar.gz文件是Linux操作系统的安装版本&#xff0c;zip文件是 windows操纵系统的压缩版本 打开后是如下网站&#xff0c;请下载匹配的操作系统的文件并且选择合适的…

2023 年 GitHub 上最受欢迎的编程语言

JavaScript 仍然是使用最多的编程语言&#xff0c;在 Web 开发中占据重要地位。 被广泛用于 Web 应用程序开发&#xff0c;框架如 React 和 Angular 促进了单页应用程序的开发。 Node.js 的出现使其在后端编程中同样重要。 Python 由于其简单性和广泛的库&#xff0c;Pyth…

自注意力简介

在注意力机制中&#xff0c;每个查询都会关注所有的键值对并生成一个注意力输出。如果查询q&#xff0c;键k和值v都来自于同一组输入&#xff0c;那么这个注意力就被称为是自注意力&#xff08;self-attention&#xff09;。自注意力这部分理论&#xff0c;我觉得台大李宏毅老师…

新兴商业模式如何破局?市场策划专家的实战指南

在这个融合了传统市场、互联网和信息技术的大潮中&#xff0c;想要在市场营销策划上玩得转&#xff0c;咱们得有超凡的全局思维和跨界的协作精神。 下面&#xff0c;我就来和大家聊聊如何在这样一个复杂环境下搞定市场营销策划&#xff0c;让你在竞争激烈的市场中脱颖而出。 …

Nodejs 第八十二章(Nacos动态配置)

什么是动态配置&#xff1f; 在Nacos中&#xff0c;动态配置是指可以在运行时动态修改应用程序的配置信息&#xff0c;而不需要重新启动或重新部署应用程序。通过Nacos的动态配置功能&#xff0c;开发人员可以将应用程序的配置信息存储在Nacos服务器中&#xff0c;并在需要时进…