SWING - JTextArea 类

简介

JTextArea 类是一个显示纯文本的多行区域。


类声明

以下是 javax.swing.JTextArea 类的声明 −

public class JTextArea
   extends JTextComponent

类构造函数

序号 构造函数 & 描述
1

JTextArea()

构造一个新的 TextArea。

2

JTextArea(Document doc)

使用给定的文档模型构造一个新的 JTextArea,并为所有其他参数 (null, 0, 0) 设置默认值。

3

JTextArea(Document doc, String text, int rows, int columns)

构造具有指定行数和列数以及给定模型的新 JTextArea。

4

JTextArea(int rows, int columns)

构造一个具有指定行数和列数的新空 TextArea。

5

JTextArea(String text)

构造一个显示指定文本的新 TextArea。

6

JTextArea(String text, int rows, int columns)

用指定的文本和行数和列数构造一个新的 TextArea。


类方法

序号 方法 & 描述
1

void append(String str)

将给定的文本附加到文档的末尾。

2

protected Document createDefaultModel()

如果未明确给出,则创建要在构造时使用的模型的默认实现。

3

AccessibleContext getAccessibleContext()

获取与此 JTextArea 关联的 AccessibleContext。

4

int getColumns()

返回 TextArea 中的列数。

5

protected int getColumnWidth()

获取列宽。

6

int getLineCount()

确定区域中包含的行数。

7

int getLineEndOffset(int line)

确定给定行末尾的偏移量。

8

int getLineOfOffset(int offset)

将组件文本中的偏移量转换为行号。

9

int getLineStartOffset(int line)

确定给定行开头的偏移量。

10

boolean getLineWrap()

获取文本区域的换行策略。

11

Dimension getPreferredScrollableViewportSize()

如果此组件嵌入在 JScrollPane 中,则返回视口的首选大小。

12

Dimension getPreferredSize()

返回 TextArea 的首选大小。

13

protected int getRowHeight()

定义行高的含义。

14

int getRows()

返回 TextArea 中的行数。

15

boolean getScrollableTracksViewportWidth()

如果视口应始终强制此 Scrollable 的宽度与视口的宽度匹配,则返回 true。

16

int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)

显示逻辑行或列的组件应计算滚动增量,这将完全显示一个新行或列,具体取决于方向的值。

17

int getTabSize()

获取用于展开选项卡的字符数。

18

String getUIClassID()

返回 UI 的类 ID。

19

boolean getWrapStyleWord()

如果文本区域是换行,则获取使用的换行样式。

20

void insert(String str, int pos)

在指定位置插入指定文本。

21

protected String paramString()

返回此 JTextArea 的字符串表示形式。

22

void replaceRange(String str, int start, int end)

用指定的新文本替换从指示的开始到结束位置的文本。

23

void setColumns(int columns)

设置此 TextArea 的列数。

24

void setFont(Font f)

设置当前字体。

25

void setLineWrap(boolean wrap)

设置文本区域的换行策略。

26

void setRows(int rows)

设置此 TextArea 的行数。

27

void setTabSize(int size)

设置标签展开到的字符数。

28

void setWrapStyleWord(boolean word)

如果文本区域是换行,则设置使用的换行样式。


继承的方法

这个类继承了以下类的方法 −

  • javax.swing.text.JTextComponent
  • javax.swing.JComponent
  • java.awt.Container
  • java.awt.Component
  • java.lang.Object

JTextArea 示例

D:/ > SWING > com > tutorialspoint > gui > 中使用您选择的任何编辑器创建以下 Java 程序

SwingControlDemo.java

package com.tutorialspoint.gui;
 
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
 
public class SwingControlDemo {
   private JFrame mainFrame;
   private JLabel headerLabel;
   private JLabel statusLabel;
   private JPanel controlPanel;

   public SwingControlDemo(){
      prepareGUI();
   }
   public static void main(String[] args){
      SwingControlDemo  swingControlDemo = new SwingControlDemo();      
      swingControlDemo.showTextAreaDemo();
   }
   private void prepareGUI(){
      mainFrame = new JFrame("Java Swing Examples");
      mainFrame.setSize(400,400);
      mainFrame.setLayout(new GridLayout(3, 1));
      
      mainFrame.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent windowEvent){
            System.exit(0);
         }        
      });    
      headerLabel = new JLabel("", JLabel.CENTER);        
      statusLabel = new JLabel("",JLabel.CENTER);    
      statusLabel.setSize(350,100);

      controlPanel = new JPanel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }
   private void showTextAreaDemo(){
      headerLabel.setText("Control in action: JTextArea"); 
      JLabel  commentlabel= new JLabel("Comments: ", JLabel.RIGHT);
      
      final JTextArea commentTextArea = 
         new JTextArea("This is a Swing tutorial " 
         +"to make GUI application in Java.",5,20);

      JScrollPane scrollPane = new JScrollPane(commentTextArea);    
      JButton showButton = new JButton("Show");

      showButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {     
            statusLabel.setText( commentTextArea.getText());        
         }
      }); 
      controlPanel.add(commentlabel);
      controlPanel.add(scrollPane);        
      controlPanel.add(showButton);
      mainFrame.setVisible(true);  
   }
}

使用命令提示符编译程序。 转到 D:/ > SWING 并键入以下命令。

D:\SWING>javac com\tutorialspoint\gui\SwingControlDemo.java

如果没有报错,说明编译成功。 使用以下命令运行程序。

D:\SWING>java com.tutorialspoint.gui.SwingControlDemo

验证以下输出。

Swing JTextArea

❮ SWING 控件