Fork me on GitHub

文本框控件JTextField和JTextArea的使用

-----------------siwuxie095

   

   

   

   

   

   

   

工程名:TestUI

包名:com.siwuxie095.ui

类名:TestTextFieldAndTextArea.java

   

   

工程结构目录如下:

   

   

   

   

   

   

在 Design 的根面板 contentPane 的上中下分别添加

一个 JTextField、JTextArea、JButton

   

   

   

JTextField 即 单行文本框,JTextArea 即 多行文本框

   

文本框是文本的编辑器,可以指定文本的初始数据 即默认文本(text),

可以指定文字的颜色(foreground)、文字的字体(font)、文字的对齐

方式(horizontalAlignment)、当前的工具提示(toolTipText)

   

「注意:JTextArea 不可指定文字的对齐方式」

   

   

   

文本框的两个相当重要的属性:editable 和 enabled

   

如果仅禁用 editable,不能输入,只能选择文本框里的文本(复制粘贴)

如果仅禁用 enabled,不能输入,且不能选择文本框里的文本(复制粘贴)

   

(都禁用的效果 等同于 仅禁用 enabled)

   

一般情况下,二者都是启用的

   

   

   

文本框最主要的作用就是接收用户的输入,需要在代码中

获取文本框中所存放的内容

   

可以调用方法:textField.getText()textArea.getText() 来获取文本

   

   

   

因为 JTextField 是单行文本框,只能输入单行数据,不能出现换行,

所以回车是不起作用的

   

如果需要编辑多行数据,就要使用 JTextArea,如果行数太多,

超出了 JTextArea 的高度(即显示不全),是不能够使用鼠标

滚动的,只能通过缩放窗体的大小来查看隐藏的内容

   

所以,需要把 JTextArea 放置在 JScrollPane 中实现滚动效果

   

方法:删除 JTextArea,将 JScrollPane 放在中间,

再将 JTextArea 添加到 JScrollPane 的 Viewport 中

   

   

如果当前的文本比较少,不足以填充 JTextArea,滚动条就会自动隐藏

   

也可以设置强制显示滚动条,在 JScrollPane 的属性:

horizontalScrollBarPolicy 和 verticalScrollBarPolicy

设置横向和纵向滚动条在何时显示,默认在需要时显示

   

   

三种情况:(1)AS_NEEDED (2)NEVER (3)ALWAYS

   

   

如果设置为 NEVER,在任何情况下都不显示滚动条,且滚动效果消失,

即不能通过鼠标滚轮滚动,只能通过鼠标选择文本的方式实现文本的滚动

   

   

   

相对于 JTextField ,JTextArea 有一个特殊的属性:自动换行(lineWrap)

   

如果设置为 true(默认为 false),则一行文本到达 JTextArea 的右边界时,

会自动换行,不会在当前行向后延伸

   

   

   

「有时也会把 JTextField 称作 文本框,JTextArea 称作 文本区域」

   

   

   

   

   

   

【made by siwuxie095】

posted on 2017-04-02 23:50  siwuxie095  阅读(3073)  评论(0编辑  收藏  举报

导航