手机
当前位置:查字典教程网 >编程开发 >Java >Swing常用组件之多行文本区JTextArea
Swing常用组件之多行文本区JTextArea
摘要:单行文本的输入存在严重的缺陷,也不适合实际的运用,本节通过一个无功能的记事本来介绍可以进行多行输入的JTextArea:JTextArea(...

单行文本的输入存在严重的缺陷,也不适合实际的运用,本节通过一个无功能的记事本来介绍可以进行多行输入的JTextArea:

JTextArea():创建一个内容为空的文本区

JTextArea(Document doc) :创建具有指定文档的文本区

JTextArea(Document doc,String text,int rows,int columns) :创建具有指定文档,行数,列数的文本区

JTextArea(int rows,int columns) :指定行数,列数的文本区

JTextArea(String text) :指定文本内容的文本区

JTextArea(String text,int rows,int columns) :指定文本内容和行数,列数的文本区

JTextArea 的一些常用方法:

public void append(String str) :将给定文本追加到文档结尾。

boolean getLineWrap() :获取文本区的换行策略。

public int getRows() :返回 TextArea 中的行数。

public boolean getWrapStyleWord() :获取换行方式(如果文本区要换行)。

public void setWrapStyleWord(boolean word) :设置换行方式(如果文本区要换行)

public void insert(String str, int pos) :将指定文本插入指定位置。

public void setColumns(int columns) :设置此 TextArea 中的列数。

public void setFont(Font f) :设置当前字体。

public void setLineWrap(boolean wrap) :设置文本区的换行策略。

public void setRows(int rows) :设置此 TextArea 的行数。

public void setEditable(boolean b):设置文本区的编辑状态。参数为true表示可编辑状态,为false则表示不可编辑状态

将JTextArea放入JScrollPane中,这样就能利用滚动的效果看到输入超过JTextArea高度的文字.

JScrollPane

JscrollPane() :创建一个滚动条,水平和垂直都可以显示

JscrollPane(Component view) : 创建一个显示指定组件内容的滚动条,当组件的内容超过视图大小就会显示水平和垂直的的滚动条

JscrollPane(Component view,int vsbPolicy,int hsbPolicy) :创建一个显示指定组件内容的滚动条,且有指定滚动策略的滚动条

JscrollPane(int vsbPolicy,int hsbPolicy) :创建一个有指定滚动策略的滚动条

JscrollPane类的构造方法中使用的滚动条策略主要有以下几种:

public int getHorizontalScrollBarPolicy (): 获取水平滚动策略值

public int getVerticalScrollBarPolicy() :获取垂直滚动策略值

public void getHorizontalScrollBarPolicy (): 设置水平滚动策略值

public void getVerticalScrollBarPolicy() :设置垂直滚动策略值

public boolean isWheelScrollingEnabled() : 设置是否进行滚动以响应鼠标滚轮

public void setViewportView(Conponent view) :设置滚动条中的滚动组件

public void setWheelScrollingEnabled(boolean handleWheel):启动/禁用对鼠标滚轮滚动的移动响应

代码实例:

package ch10; import java.awt.event.*; import javax.swing.*; public class NoteTextArea extends JFrame implements ActionListener { private JPanel jp = new JPanel (); JButton jb1 = new JButton("点我自动换行"); JButton jb2 = new JButton("点我不换行"); private JTextArea jt = new JTextArea(); private JScrollPane js = new JScrollPane(jt); public NoteTextArea() { jp.setLayout(null); jb1.setBounds(40,40,180,20); jb2.setBounds(280,40,180,20); jp.add(jb1); jp.add(jb2); jb1.addActionListener(this); jb2.addActionListener(this); js.setBounds(40,80,420,100); jp.add(js); jt.setLineWrap(false); for(int i=0;i<30;i++) { jt.append("自动换行,不换行!"); } this.add(jp); this.setBounds(80,80,300,300); this.setVisible(true); this.setTitle("记事本多行文本区"); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public void actionPerformed(ActionEvent a) { if(a.getSource()==jb1) { jt.setLineWrap(true); } else if(a.getSource()==jb2) { jt.setLineWrap(false); } } public static void main(String args[]) { new NoteTextArea(); } }

以上就是本文的全部内容,希望对大家的学习有所帮助。

【Swing常用组件之多行文本区JTextArea】相关文章:

基于JavaMail的常用类详细介绍

Java多线程之中断线程(Interrupt)的使用详解

java线程之用Thread类创建线程的方法

移动指定文件夹内的全部文件

JAVA中JNI的简单使用分享

java使用命令行打包JAR

java向多线程中传递参数的三种方法详细介绍

分享Java程序员应该知道的10个调试技巧

java中原码、反码与补码的问题分析

java开发之读写txt文件操作的实现

精品推荐
分类导航