Swing程序设计(10)列表框,文本框,文本域,密码框

2024-02-17 20:04

本文主要是介绍Swing程序设计(10)列表框,文本框,文本域,密码框,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 一、列表框
  • 二、文本框(域)
    • 1.文本框
    • 2.文本域
  • 三、密码框
  • 总结

前言

      该篇文章简单介绍了Java中Swing组件里的列表框、文本框、密码框。


一、列表框

        列表框(JList)相比下拉框,自身只是在窗体上占据固定的大小。如果需要完全显示列表框信息,可以将列表框添加于滚动面板中。

        JList常用的构造方法如下:

        第一种方法:直接实例化,之后用setListData()方法添加对象

public void JList();
//初始化列表框对象后,使用 setListData()方法添加对象

         初始化列表框对象后,使用 setListData()方法添加对象

         实例展示:

import javax.swing.JFrame;
import javax.swing.JList;
import java.awt.*;public class MyList extends JFrame{public MyList(){Container c = getContentPane();//核心代码以下JList<String> jl = new JList<>();String str[] ={"列表1","列表2","列表3","列表4"};jl.setListData(str);//使用该方法设置列表数据,引用对象应为数组类型c.add(jl);setBounds(100,100,100,100);setVisible(true);setDefaultCloseOperation(EXIT_ON_CLOSE);}public static void main(String[] args) {MyList my = new MyList();}
}

         运行结果:

        第二种方法: 在实例化JList列表框时,直接引用,数组类型的变量,至列表中。

public void JList(Object[] listDate);
//直接在JList实例化时,引用数组类型的对象,填充列表框

         与其他代码大差不差,核心代码差别为下:

String str[] ={"列表1","列表2","列表3","列表4"};JList<String> jl = new JList<>(str);
//创建数组后直接添加于列表框之中

        运行结果一样

         第三种方法:在实例化JList列表框时,直接引用,向量类的对象,至列表中。

public void JList(Vector listDate);

         核心代码差别为下:

Vector<String> contents = new Vector<>();
//列表框中引用了Vector对象
JList<String> jl = new JList<>(contents);//随时添加新的列表数据
contents.add("列表1");
contents.add("列表2");
contents.add("列表3");
contents.add("列表4");

         运行结果:

        第四种方法:在实例化JList列表框时,实例化ListModel类,至列表中 

public void JList(ListModel dateModel);

        在本类中创建一个MyListModel类,继承,“抽象列表模型类”。在该类中创建一个数组对象,然后实现该抽象类的两个方法,getElement()方法和getSize()方法。

        JList类会在内部自动调用getElementAt() 方法获取列表的每个元素。getElementAt() 方法会根据索引值返回对应位置的元素内容。同样,getSize() 方法用于告诉JList 数据模型中有多少个元素。

           实例展示:

public class MyList extends JFrame{public MyList(){Container c = getContentPane();JList<String> jl = new JList<>(new MyListModle());//实例化JList列表框时,实例化ListModel类c.add(jl);setBounds(100,100,100,100);setVisible(true);setDefaultCloseOperation(EXIT_ON_CLOSE);}//创建列表模型,继承抽象类,实现两个抽象方法
class MyListModle extends AbstractListModel<String>{private String contents[] ={"列表1","列表2","列表3","列表4"};public String getElementAt(int x){    //JList类会在内部调用这个方法,获取列表的每个元素if(x<contents.length){return contents[x++];}else{return null;}}public int getSize(){return contents.length;}
}

         运行结果:

二、文本框(域)

        1.文本框

        文本框(JTextField)是用于显示或编辑一个单行文本框体。

        JTextField常用构造方法如下:

public JTextField()        直接创建一行可输入的文本框

public JTextField(String text)        创建一行有“text”输入内容的文本框

        实例展示:

//···········省略代码··················JTextField jt = new JTextField("你好");//···········省略代码··················

 

        2.文本域

        文本域(JTextArea)即为一个文本文件,可以任意输入内容。

        JTextArea常用的构造方式如下:

public JTextArea()        直接创建可输入的文本域

public JTextArea(String text)        创建有“text”输入内容的文本域

setLineWrap()方法    将该方法的参数设置为ture,文本域就会自动换行,触边换行

        实例展示:

import javax.swing.JFrame;
import javax.swing.JTextArea;
import java.awt.*;public class MyJTextArea extends JFrame{public MyJTextArea(){Container c = getContentPane();JTextArea jt = new JTextArea("文本域",6,6);jt.setLineWrap(true);  // setLineWarp()方法 可以实现自动换行 触边换行c.add(jt);setBounds(100,100,100,200);setVisible(true);setDefaultCloseOperation(EXIT_ON_CLOSE);}public static void main(String[] args) {MyJTextArea my = new MyJTextArea();}
}

        运行结果:

三、密码框

         

        密码框(JPasswordField)与文本框唯一不同的是,密码框将用户输入的字符串以某种符号进行加密,使用 setEchoChar() 方法可以改变密码框的回显字符。

        JPasswordField常用的构造方法如下:

public JTextArea()        直接创建可输入的密码框

public JTextArea(String text)        创建有“****”输入内容的密码框

        实例展示:

//*********省略代码***********JPasswordField jp = new JPasswordField( "1234");
//创建了一个有输入内容,显示为****jp.setEchoChar('#');
//回显字符由‘*’变为‘#’,显示为了####//*********省略代码***********

        输出结果:

 


总结

        该篇提供了一些关于“框”的代码,使用这些框是前端的基础,只有记住这些框的名字即可,再实例化后,添加进容器对象,其他的代码基本不会改变。

这篇关于Swing程序设计(10)列表框,文本框,文本域,密码框的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/718834

相关文章

数据库oracle用户密码过期查询及解决方案

《数据库oracle用户密码过期查询及解决方案》:本文主要介绍如何处理ORACLE数据库用户密码过期和修改密码期限的问题,包括创建用户、赋予权限、修改密码、解锁用户和设置密码期限,文中通过代码介绍... 目录前言一、创建用户、赋予权限、修改密码、解锁用户和设置期限二、查询用户密码期限和过期后的修改1.查询用

通过C#获取PDF中指定文本或所有文本的字体信息

《通过C#获取PDF中指定文本或所有文本的字体信息》在设计和出版行业中,字体的选择和使用对最终作品的质量有着重要影响,然而,有时我们可能会遇到包含未知字体的PDF文件,这使得我们无法准确地复制或修改文... 目录引言C# 获取PDF中指定文本的字体信息C# 获取PDF文档中用到的所有字体信息引言在设计和出

Java中的密码加密方式

《Java中的密码加密方式》文章介绍了Java中使用MD5算法对密码进行加密的方法,以及如何通过加盐和多重加密来提高密码的安全性,MD5是一种不可逆的哈希算法,适合用于存储密码,因为其输出的摘要长度固... 目录Java的密码加密方式密码加密一般的应用方式是总结Java的密码加密方式密码加密【这里采用的

mysql重置root密码的完整步骤(适用于5.7和8.0)

《mysql重置root密码的完整步骤(适用于5.7和8.0)》:本文主要介绍mysql重置root密码的完整步骤,文中描述了如何停止MySQL服务、以管理员身份打开命令行、替换配置文件路径、修改... 目录第一步:先停止mysql服务,一定要停止!方式一:通过命令行关闭mysql服务方式二:通过服务项关闭

Java操作xls替换文本或图片的功能实现

《Java操作xls替换文本或图片的功能实现》这篇文章主要给大家介绍了关于Java操作xls替换文本或图片功能实现的相关资料,文中通过示例代码讲解了文件上传、文件处理和Excel文件生成,需要的朋友可... 目录准备xls模板文件:template.xls准备需要替换的图片和数据功能实现包声明与导入类声明与

python解析HTML并提取span标签中的文本

《python解析HTML并提取span标签中的文本》在网页开发和数据抓取过程中,我们经常需要从HTML页面中提取信息,尤其是span元素中的文本,span标签是一个行内元素,通常用于包装一小段文本或... 目录一、安装相关依赖二、html 页面结构三、使用 BeautifulSoup javascript

【测试】输入正确用户名和密码,点击登录没有响应的可能性原因

目录 一、前端问题 1. 界面交互问题 2. 输入数据校验问题 二、网络问题 1. 网络连接中断 2. 代理设置问题 三、后端问题 1. 服务器故障 2. 数据库问题 3. 权限问题: 四、其他问题 1. 缓存问题 2. 第三方服务问题 3. 配置问题 一、前端问题 1. 界面交互问题 登录按钮的点击事件未正确绑定,导致点击后无法触发登录操作。 页面可能存在

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

C语言程序设计(数据类型、运算符与表达式)

一、C的数据类型 C语言提供的数据类型: 二、常量和变量 2.1常量和符号常量 在程序运行过程中,其值不能被改变的量称为常量。 常量区分为不同的类型: 程序中用#define(预处理器指令)命令行定义变量将代表常量,用一个标识符代表一个常量,称为符合常量。 2.2变量 变量代表内存中具有特定属性的一个存储单元,用来存放数据,在程序运行期间,这些值是可以 改变的。 变

Level3 — PART 3 — 自然语言处理与文本分析

目录 自然语言处理概要 分词与词性标注 N-Gram 分词 分词及词性标注的难点 法则式分词法 全切分 FMM和BMM Bi-direction MM 优缺点 统计式分词法 N-Gram概率模型 HMM概率模型 词性标注(Part-of-Speech Tagging) HMM 文本挖掘概要 信息检索(Information Retrieval) 全文扫描 关键词