標籤:
文字框
文字框(JTextField)是介面中用於輸入和輸出一行文本的框。JTextField類用來建立文字框。與文字框相關的介面是ActionListener。
文字框處理常式的基本內容有以下幾個方面:
①聲明一個文字框名。
②建立一個文字框對象。
③將文字框對象加入到某個容器。
④對需要控制的文字框對象註冊監視器,監聽文字框的輸入結束(即輸入斷行符號鍵)事件。
⑤一個處理文字框事件的方法,完成對截獲事件進行判斷和處理。
JTextField類的主要構造方法
JTextField();//文字框的字元長度為1JTextField(int columns);//初始值為空白字串,文字框的字元長度設為columnsJTextField(String text);//文字框初始值為text的字串JTextField(String text,int columns);//文字框初始值為text,文字框的字元長度為columns
JTextField類的其他方法:
setFont(Font f);//設定字型setText(String text);//在文字框中設定文本getText();//擷取文字框中的文本setEditable(boolean);//指定文字框的可編輯性,預設為trueaddActionListener(ActionListener);//為文字框設定動作監視器,指定ActionListener對象接受該文字框上發生的輸入結束動作事件
//小應用程式有兩個文字框,一個文本用於輸入一個整數,另一個文字框顯示這個整數的平方。程式用字串轉基本類型的方法Long.parseLong(text1.getText()) 讀取文字框text1中的字串,並將它轉換成整數,程式用Sqr類的執行個體作為監視器,但為了讓監視器能訪問主類的變數,主類中的變數被聲明為類變數,並且不設定存取權限。import java.applet.*;import javax.swing.*;import java.awt.event.*;public class Test extends Applet { static JTextField text1,text2; Sqr s = new Sqr();//建立監視器 public void init() { text1 = new JTextField(10); text2 = new JTextField(10); add(text1); add(text2); text1.addActionListener(s); }}class Sqr implements ActionListener { public void actionPerformed(ActionEvent e) {//實現介面ActionListener if(e.getSource() == Test.text1) { //將text1的文本轉換成long型資料 long n = Long.parseLong(Test.text1.getText()); //將n*n轉化為字串 Test.text2.setText(String.valueOf(n*n)); } }}
文本區
文本區(JTextArea)是表單中一個放置文本的地區。文本區與文字框的主要區別是文本區可以存放多行文本。
文本區處理常式的基本內容有以下幾個方面:
聲明一個文本區名。
建立一個文本區對象。
將文本區對象加入到某個容器。
JTextArea類的主要構造方法:
JTextArea(),以預設的列數和行數,建立一個文本區對象。
JTextArea(String s),以s為初始值,建立一個文本區對象。
JTextArea(Strings ,int x,int y),以s為初始值,行數為x,列數為y,建立一個文本區對象。
JTextArea(int x,int y)以行數為x,以列數為y,建立一個文本區對象。
JTextArea類的其他常用方法:
setText(String s),設定顯示文本,同時清除原有文本。
getText(),擷取文本區的文本。
insert(String s,int x),在指定的位置插入指定的文本。
replace(String s,int x,int y),用給定的一替換從x位置開始到y位置結束的文本。
append(String s),在文本區追加文本。
getCarePosition(),擷取文本區中活動游標的位置。
setCarePosition(int n),設定活動游標的位置。
setLineWrap(boolean b),設定自動換行,預設情況,不自動換行。
【Java GUI】文字框和文本區