- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2019 年计算机二级考试 java 章节辅导:文本输入
8.3 文本输入
在 java 中,能够用于文本输入的组件包括 JTextField (文本框)、
JTextArea (文本区)以及 JPasswordField (密码框), JLabel (标签)不支持文本输入,但能够容纳文本。
8.3.1 JTextFileld 文本框
JTextField 文本框是一个允许编辑单行文本的 swing 组件, JTextField 提供了多个构造方法用于创建 JTextField 对象。具体见下
表 8-3。
表
8-3 JTextField
构造方法
JTextField
有两个重要的方法
setText(String t)
和
getText()
分别用
于设置文本框的显示文本和获取当前文本框的文本。不过这两个方法
都不是 JTextField 本身提供的方法,而是其父类 JTextComponent 所提供的。
JTextField
类可引发
ActionEvent
事件,当用户在文本框中按下回车
键时触发。
8.3.2 JTextArea
文本区
JTextArea 文本区是一个允许编辑多行文本的 swing 组件, JTextArea 提供了多个构造方法用于创建 JTextArea 对象。具体见下表 8-4 。
表 8-4 JTextArea 构造方法
因为 JTextArea 是 JTextComponent 的直接子类,所以与 JTextField
一样,也能够通过
setText(String t)
和 getText() 方法设置和获取文
本区的文本值。
JTextArea 类可引发 ActionEvent 事件,当用户在文本区中按下回车键时触发。
8.3.3 JPasswordField
密码框
在 AWT组件中,并没有单独的密码框组件,而是通过 TextField 的一个 setEchoChar() 方法来得到密码框,但在 Swing 中则单独通过一个类 JPasswordField 来表示。密码框是文本框 JTextField 组件的简单扩展。
所以,其构造方法与 JTextField 相类似,这里不再介绍。
JPasswordField 类中有几个重要方法,如下:
表 8-5 JPasswordField 类常用构造方法
8.3.4 JLabel 标签
JLabel 是一个静态组件,该组件能够显示一行静态文本,一般仅仅一个说明性的文字,而不接受用户的输入,也无事件响应。
JLabel 提供了如下方法用于构建 JLabel 对象
表 8-6 JLabel 构造方法构造方法中各参数意义
Image:显示在 JLabel 上的图标。
horizontalAlignment :JLabel 上文字的对齐方式,其值为 int 枚举型,值包括 SwingConstants.LEFT 、SwingConstants.CENTER、
SwingConstants.RIGHT 、SwingConstants.LEADING 和 SwingConstants.TRAILING 。
text :显示在 JLabel 上的文字。
以下的例 8-4 演示了本节中所介绍的各个组件的用法,界面可提供用户输入用户名和密码,按下回车后在 JTextArea 显示区显示用户输入的用户名和密码信息,不允许用户名或密码为空。
[ 例 8-4]
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
class TextInputTest extends JFrame{
private JTextField userName = new JTextField(10); private JTextArea ta = new JTextArea(4,10);
private JPasswordField password = new JPasswordField(10);
private JLabel label1 = new JLabel(
用户名 );
private JLabel label2 = new JLabel( public TextInputTest(String title){ super(title);
密 码);
password.setEchoChar(*);// 设置回显字符 Container contentPane = this.getContentPane(); JPanel panelNorth = new JPanel(); JPanel panelCenter =
文档评论(0)