C語言中文網 目錄
首頁 > Java Swing 閱讀:1,403

Java Swing JTextArea:文本域組件

< 上一頁Swing單行文本框 Swing復選框下一頁 >

文本域與文本框的最大區別就是文本域允許用戶輸入多行文本信息。Swing 中使用 JTextArea 類實現一個文本域,其常用構造方法如下。
  • JTextArea():創建一個默認的文本域。
  • JTextArea(int rows,int columns):創建一個具有指定行數和列數的文本域。
  • JTextArea(String text):創建一個包含指定文本的文本域。
  • JTextArea(String text,int rows,int columns):創建一個既包含指定文本,又包含指定行數和列數的多行文本域。

JTextArea 類的常用方法如表 1 所示。
表1 JTextArea類的常用方法
方法名稱 說明
void append(String str) 將字符串 str 添加到文本域的最后位置
void setColumns(int columns) 設置文本域的行數
void setRows(int rows) 設置文本域的列數
int getColumns() 獲取文本域的行數
void setLineWrap(boolean wrap) 設置文本域的換行策略
int getRows() 獲取文本域的列數
void insert(String str,int position) 插入指定的字符串到文本域的指定位置
void replaceRange(String str,int start,int end) 將指定的開始位 start 與結束位 end 之間的字符串用指定的字符串 str 取代

例 1

使用 JFrame 組件創建一個窗口,再向窗口中添加一個文本域,并將文本域中的文本設置為自動換行,允許顯示滾動條。具體代碼如下:
package ch17;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
public class JTextAreaDemo
{
    public static void main(String[] agrs)
    {
        JFrame frame=new JFrame("Java文本域組件示例");    //創建Frame窗口
        JPanel jp=new JPanel();    //創建一個JPanel對象
        JTextArea jta=new JTextArea("請輸入內容",7,30);
        jta.setLineWrap(true);    //設置文本域中的文本為自動換行
        jta.setForeground(Color.BLACK);    //設置組件的背景色
        jta.setFont(new Font("楷體",Font.BOLD,16));    //修改字體樣式
        jta.setBackground(Color.YELLOW);    //設置按鈕背景色
        JScrollPane jsp=new JScrollPane(jta);    //將文本域放入滾動窗口
        Dimension size=jta.getPreferredSize();    //獲得文本域的首選大小
        jsp.setBounds(110,90,size.width,size.height);
        jp.add(jsp);    //將JScrollPane添加到JPanel容器中
        frame.add(jp);    //將JPanel容器添加到JFrame容器中
        frame.setBackground(Color.LIGHT_GRAY);
        frame.setSize(400,200);    //設置JFrame容器的大小
        frame.setVisible(true);
    }
}

在上述代碼中將 JTextArea 文本域放入滾動窗口中,并通過 getPreferredSize() 方法獲得文本域的顯示大小。將滾動窗口的大小設置成與文本域大小相同,再將滾動窗口添加到 JPanel 面板中。

運行程序,在文本域中可以輸入多行內容,當內容超出文本域高度時會顯示滾動條,如圖 1 所示。

文本域運行效果

文本域運行效果
圖1 文本域運行效果
< 上一頁Swing單行文本框 Swing復選框下一頁 >

精美而實用的網站,提供C語言、C++、STL、Linux、Shell、Java、Go語言等教程,以及socket、GCC、vi、Swing、設計模式、JSP等專題。

Copyright ?2011-2018 biancheng.net, 陜ICP備15000209號

底部Logo