当前位置: 首页 > news >正文

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.mrgr.cn/news/78012.html

相关文章:

  • 【隐私计算大模型】联邦深度学习之拆分学习Split learning原理及安全风险、应对措施以及在大模型联合训练中的应用案例
  • JavaScript中的箭头函数以及编写优化
  • C#动态类型详解:应用场景与注意事项
  • C++ 编程指南09 - 如需ABI兼容,则应该使用 C 风格的子集
  • 第1章计算机系统概论
  • C++知识整理day2类与对象(上)——类的定义、实例化、this指针、构造、析构、拷贝构造函数
  • Java基础-Java中的常用类(上)
  • openssl创建自签名证书
  • Linux 正则表达式(basic and extened)
  • Linux笔记---进程:进程切换与O(1)调度算法
  • 懂微百择唯供应链RankingGoodsList2存在SQL注入漏洞
  • PIMPL模式和D指针
  • C语言:深入理解指针
  • MPI 直接传递 GPU buffer 数据的原理——调试 libmpi.so from MPI with-cuda
  • 《Spring 实战:小型项目开发初体验》
  • Loom篇之java虚拟线程那些事儿
  • ajax (一)
  • WordPress添加类似说说、微博的时间轴微语页面
  • URL在线编码解码- 加菲工具
  • GPT 中的核心部分 Transformer 和RNN 具体别和应用领域
  • ThingsBoard规则链节点:AWS SQS 节点详解
  • 图片预览 图片上传到服务器
  • ubuntu中使用ffmpeg和nginx推流rtmp视频
  • RFdiffusion sample_vec函数解读
  • PAL(Program-Aided Language Model)
  • AGCR自适应杂波滤除算法for GPR