Swing學習07:Java Swing JTextArea

文本域與文本框的最大區別就是文本域允許用戶輸入多行文本信息。在 Swing 中使用 JTextArea 類實現一個文本域,其常用構造方法如下。

  • JTextArea():創建一個默認的文本域。
  • JTextArea(int rows,int columns):創建一個具有指定行數和列數的文本域。
  • JTextArea(String text):創建一個包含指定文本的文本域。
  • JTextArea(String text,int rows,int columns):創建一個既包含指定文本,又包含指定行數和列數的多行文本域。

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 組件創建一個窗口,再向窗口中添加一個文本域,並將文本域中的文本設置爲自動換行,允許顯示滾動條。具體代碼如下:

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 面板中。

運行程序,在文本域中可以輸入多行內容,當內容超出文本域高度時會顯示滾動條,如圖所示。
在這裏插入圖片描述
謝謝觀看

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章