您好,登錄后才能下訂單哦!
1. 概述
官方JavaDocsApi: javax.swing.JTextArea
JTextArea,文本區域。JTextArea 用來編輯多行的文本。JTextArea 除了允許多行編輯外,其他基本用法和 JTextField 基本一致。
JTextArea 常用構造方法:
/** * 參數說明: * text: 默認顯示的文本 * rows: 默認可見的行數 * columns: 默認可見的列數 * * 默認由 rows 和 columns 決定首選大小 */ JTextArea() JTextArea(String text) JTextArea(int rows, int columns) JTextArea(String text, int rows, int columns)
JTextArea 常用方法:
// 是否自動換行,默認為 false void setLineWrap(boolean wrap) // 設置自動換行方式。如果為 true,則將在單詞邊界(空白)處換行; 如果為 false,則將在字符邊界處換行。默認為 false。 void setWrapStyleWord(boolean word) // 獲取文本框中的文本 String getText() // 追加文本到文檔末尾 void append(String str) // 替換部分文本 void replaceRange(String str, int start, int end) // 設置文本框的 文本、字體 和 字體顏色 void setText(String text) void setFont(Font font) void setForeground(Color fg) // 獲取內容的行數(以換行符計算,滿行自動換下一行不算增加行數) int getLineCount() // 獲取指定行(行數從0開始)的行尾(包括換行符)在全文中的偏移量 int getLineEndOffset(int line) // 獲取指定偏移量所在的行數(行數從0開始) int getLineOfOffset(int offset) // 設置顏色,分別為: 光標顏色、呈現選中部分的背景顏色、選中部分文本的顏色、不可用時文本的顏色 void setCaretColor(Color c) void setSelectionColor(Color c) void setSelectedTextColor(Color c) void setDisabledTextColor(Color c) // 設置文本框是否可編輯 void setEditable(boolean b) /* 下面方法定義在 java.awt.Component 基類中 */ // 判斷組件當前是否擁有焦點 boolean isFocusOwner() // 設置組件是否可用 void setEnabled(boolean b)
JTextArea 復制粘貼相關方法:
// 設置光標開始位置,selectionStart >= 0 void setSelectionStart(int selectionStart) // 設置光標結束位置,selectionEnd >= selectionStart void setSelectionEnd(int selectionEnd) // 復制選中部分文本 void copy() // 剪切選中部分文本 void cut() // 粘貼文本到文本框 void paste()
JTextArea 常用監聽器:
// 添加焦點事件監聽器 void addFocusListener(FocusListener listener) // 添加文本框內的 文本改變 監聽器 textField.getDocument().addDocumentListener(DocumentListener listener) // 添加按鍵監聽器 void addKeyListener(KeyListener listener)
PS: JTextArea 在使用時通常把它放到 JScrollPane 容器中來使用,以此來實現內容增多時可水平/垂直滾動的效果。
2. 代碼實例
package com.xiets.swing; import javax.swing.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class Main { public static void main(String[] args) { JFrame jf = new JFrame("測試窗口"); jf.setSize(250, 250); jf.setLocationRelativeTo(null); jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE); JPanel panel = new JPanel(); // 創建一個 5 行 10 列的文本區域 final JTextArea textArea = new JTextArea(5, 10); // 設置自動換行 textArea.setLineWrap(true); // 添加到內容面板 panel.add(textArea); // 創建一個提交按鈕,點擊按鈕獲取輸入文本 JButton btn = new JButton("提交"); btn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { System.out.println("提交: " + textArea.getText()); } }); panel.add(btn); jf.setContentPane(panel); jf.setVisible(true); } }
結果展示:
輸入內容,點擊按鈕,查看控制臺輸出。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。