- SWING 教程
- SWING - 主頁
- SWING - 概述
- SWING - 環境
- SWING - 控制元件
- SWING - 事件處理
- SWING - 事件類
- SWING - 事件監聽器
- SWING - 事件介面卡
- SWING - 佈局
- SWING - 選單
- SWING -容器
- SWING 實用資源
- SWING - 快速指南
- SWING - 實用資源
- SWING - 討論
SWING - JTextField 類
簡介
JTextField 類是一個元件,允許編輯單行文字。
類宣告
以下是 javax.swing.JTextField 類的宣告 -
public class JTextField
extends JTextComponent
implements SwingConstants
欄位
以下是 javax.swing.JList 類的欄位 -
static String notifyAction - 傳送通知操作的名稱,即已接受該欄位的內容。
類建構函式
| 序列號 | 建構函式和說明 |
|---|---|
| 1 |
JTextField() 構造一個新的 TextField。 |
| 2 |
JTextField(Document doc, String text, int columns) 使用給定的文字儲存模型和給定的列數構造一個新的 JTextField。 |
| 3 |
JTextField(int columns) 使用指定列數構造一個新的空 TextField。 |
| 4 |
JTextField(String text) 使用指定文字初始化一個新的 TextField。 |
| 5 |
JTextField(String text, int columns) 使用指定文字和列數初始化一個新的 TextField。 |
類方法
| 序列號 | 方法和說明 |
|---|---|
| 1 |
protected void actionPropertyChanged(Action action, String propertyName) 響應關聯操作的屬性更改來更新文字欄位的狀態。 |
| 2 |
void addActionListener(ActionListener l) 新增指定的操作偵聽器以從該文字欄位接收操作事件 |
| 3 |
protected void configurePropertiesFromAction(Action a) 設定該文字欄位上的屬性以匹配指定操作中的屬性 |
| 4 |
protected PropertyChangeListener createActionPropertyChangeListener(Action a) 建立一個 PropertyChangeListener,該監聽器負責偵聽指定操作的更改並更新適當的屬性 |
| 5 |
protected Document createDefaultModel() 如果未明確給出,則建立將用於構建的模型的預設實現 |
| 6 |
protected void fireActionPerformed() 通知對註冊的此事件型別感興趣的所有偵聽器 |
| 7 |
AccessibleContext getAccessibleContext() 獲取與此 JTextField 關聯的 AccessibleContext |
| 8 |
Action getAction() 如果未設定任何操作,則返回為此 ActionEvent 源當前設定的操作,否則返回 null |
| 9 |
ActionListener[] getActionListeners() 返回使用 addActionListener() 新增到此 JTextField 的所有 ActionListener 的陣列 |
| 10 |
Action[] getActions() 獲取編輯器的命令列表 |
| 11 |
int getColumns() 返回此 TextField 中的列數 |
| 12 |
protected int getColumnWidth() 返回列寬 |
| 13 |
int getHorizontalAlignment() 返回文字的水平對齊方式 |
| 14 |
BoundedRangeModel getHorizontalVisibility() 獲取文字欄位的可見性 |
| 15 |
Dimension getPreferredSize() 返回此 TextField 所需的首選大小維度 |
| 16 |
int getScrollOffset() 以畫素為單位獲取滾動偏移量 |
| 17 |
String getUIClassID() 獲取用於 UI 的類 ID |
| 18 |
boolean isValidateRoot() 來自文字欄位自身的 revalidate 呼叫將透過驗證文字欄位來處理,除非文字欄位包含在 JViewport 中,在這種情況下返回 false |
| 19 |
protected String paramString() 返回此 JTextField 的字串表示形式 |
| 20 |
void postActionEvent() 透過將操作事件分派給任何註冊的 ActionListener 物件來處理在此文字欄位上發生的事件 |
| 21 |
void removeActionListener(ActionListener l) 從該文字框移除指定的操作偵聽器,此偵聽器將不再從該文字框接收操作事件。 |
| 22 |
void scrollRectToVisible(Rectangle r) 將該欄位滾動到左邊或右邊。 |
| 23 |
void setAction(Action a) 設定 ActionEvent 源的 Action。 |
| 24 |
void setActionCommand(String command) 設定用於操作事件的命令字串。 |
| 25 |
void setColumns(int columns) 設定此 TextField 中的列數,然後使佈局失效。 |
| 26 |
void setDocument(Document doc) 將編輯器與文字文件關聯。 |
| 27 |
void setFont(Font f) 設定當前字型。 |
| 28 |
void setHorizontalAlignment(int alignment) 設定文字的水平對齊方式。 |
| 29 |
void setScrollOffset(int scrollOffset) 設定滾動偏移量(以畫素為單位)。 |
Methods Inherited
此類從以下類繼承方法——
- javax.swing.text.JTextComponent
- javax.swing.JComponent
- java.awt.Container
- java.awt.Component
- java.lang.Object
JTextField 示例
在您選擇的任何編輯器中建立一個 Java 程式,例如 D:/ > SWING > com > tutorialspoint > gui >
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.showTextFieldDemo();
}
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 showTextFieldDemo(){
headerLabel.setText("Control in action: JTextField");
JLabel namelabel= new JLabel("User ID: ", JLabel.RIGHT);
JLabel passwordLabel = new JLabel("Password: ", JLabel.CENTER);
final JTextField userText = new JTextField(6);
final JPasswordField passwordText = new JPasswordField(6);
JButton loginButton = new JButton("Login");
loginButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String data = "Username " + userText.getText();
data += ", Password: " + new String(passwordText.getPassword());
statusLabel.setText(data);
}
});
controlPanel.add(namelabel);
controlPanel.add(userText);
controlPanel.add(passwordLabel);
controlPanel.add(passwordText);
controlPanel.add(loginButton);
mainFrame.setVisible(true);
}
}
使用命令提示符編譯程式。轉到 D:/ > SWING 並鍵入以下命令。
D:\SWING>javac com\tutorialspoint\gui\SwingControlDemo.java
如果沒有錯誤,則表示編譯成功。使用以下命令執行程式。
D:\SWING>java com.tutorialspoint.gui.SwingControlDemo
驗證以下輸出。