AWT TextField 类

简介

textField 组件允许用户编辑单行文本。当用户在文本字段中键入一个键时,事件将发送到 TextField。键事件可能是按下键、释放键或键入键。键事件将传递给已注册的 KeyListener。如果在文本字段上启用了 ActionEvent,则也可以通过按回车键触发 ActionEvent。

类声明

以下是 java.awt.TextField 类的声明:

public class TextField
    extends TextComponent

类构造函数

S.N.构造函数 &描述
1

TextField()

构造一个新的文本字段。

2

TextField(int columns)

构造一个具有指定列数的新空文本字段。

3

TextField(String text)

构造一个使用指定文本初始化的新文本字段。

4

TextField(String text, int columns)

构造一个使用要显示的指定文本初始化的新文本字段,并且宽度足以容纳指定数量的文本列。

类方法

S.N.方法与说明
1

void addActionListener(ActionListener l)

添加指定的操作侦听器以接收来自此文本字段的操作事件。

2

void addNotify()

创建 TextField 的对等体。

3

boolean echoCharIsSet()

指示此文本字段是否具有用于回显的字符集。

4

AccessibleContext getAccessibleContext()

获取与此 TextField 关联的 AccessibleContext。

5

ActionListener[] getActionListeners()

返回在此文本字段上注册的所有动作侦听器的数组。

6

int getColumns()

获取此文本字段中的列数。

7

char getEchoChar()

获取用于回显。

8

<T extends EventListener> T[] getListeners(Class<T> listenerType)

返回当前在此 TextField 上注册为 FooListeners 的所有对象的数组。

9

Dimension getMinimumSize()

获取此文本字段的最小尺寸。

10

Dimension getMinimumSize(int columns) 获取具有指定列数的文本字段的最小尺寸。

11

Dimension getPreferredSize()

获取此文本的首选大小字段。

12

Dimension getPreferredSize(int columns)

获取具有指定列数的此文本字段的首选大小。

13

Dimension minimumSize()

已弃用。从 JDK 1.1 版开始,由 getMinimumSize() 取代。

14

Dimension minimumSize(int columns)

已弃用。从 JDK 1.1 版开始,由 getMinimumSize(int) 取代。

15

protected String paramString()

返回表示此 TextField 状态的字符串。

16

Dimension preferredSize()

已弃用。从 JDK 1.1 版开始,由 getPreferredSize() 取代。

17

Dimension preferredSize(int columns)

已弃用。从 JDK 1.1 版开始,由 getPreferredSize(int) 取代。

18

protected void processActionEvent(ActionEvent e)

通过将发生在此文本字段上的动作事件分派给任何已注册的 ActionListener 对象来处理这些事件。

19

protected void processEvent(AWTEvent e)

处理此文本字段上的事件。

20

void removeActionListener(ActionListener l)

删除指定的动作侦听器,使其不再接收来自此文本的动作事件字段。

21

void setColumns(int columns)

设置此文本字段中的列数。

22

void setEchoChar(char c)

设置此文本字段的回显字符。

23

void setEchoCharacter(char c)

已弃用。从 JDK 1.1 版开始,由 setEchoChar(char) 取代。

24

void setText(String t)

将此文本组件呈现的文本设置为指定文本。

继承的方法

此类从以下类继承方法:

  • java.awt.TextComponent

  • java.awt.Component

  • java.lang.Object

TextField Example

使用您选择的任何编辑器在 D:/ > AWT > com > tutorialspoint > gui > 中创建以下 Java 程序

AwtControlDemo.java
package com.tutorialspoint.gui;

import java.awt.*;
import java.awt.event.*;

public class AwtControlDemo {

   private Frame mainFrame;
   private Label headerLabel;
   private Label statusLabel;
   private Panel controlPanel;

   public AwtControlDemo(){
      prepareGUI();
   }

   public static void main(String[] args){
      AwtControlDemo  awtControlDemo = new AwtControlDemo();
      awtControlDemo.showTextFieldDemo();
   }

   private void prepareGUI(){
      mainFrame = new Frame("Java AWT 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 Label();
      headerLabel.setAlignment(Label.CENTER);
      statusLabel = new Label();        
      statusLabel.setAlignment(Label.CENTER);
      statusLabel.setSize(350,100);

      controlPanel = new Panel();
      controlPanel.setLayout(new FlowLayout());

      mainFrame.add(headerLabel);
      mainFrame.add(controlPanel);
      mainFrame.add(statusLabel);
      mainFrame.setVisible(true);  
   }

   private void showTextFieldDemo(){
      headerLabel.setText("Control in action: TextField"); 

      Label  namelabel= new Label("User ID: ", Label.RIGHT);
      Label  passwordLabel = new Label("Password: ", Label.CENTER);
      final TextField userText = new TextField(6);
      final TextField passwordText = new TextField(6);
      passwordText.setEchoChar('*');

      Button loginButton = new Button("Login");
   
      loginButton.addActionListener(new ActionListener() {
         public void actionPerformed(ActionEvent e) {     
            String data = "Username: " + userText.getText();
            data += ", Password: " + passwordText.getText();
            statusLabel.setText(data);        
         }
      }); 

      controlPanel.add(namelabel);
      controlPanel.add(userText);
      controlPanel.add(passwordLabel);       
      controlPanel.add(passwordText);
      controlPanel.add(loginButton);
      mainFrame.setVisible(true);  
   }
}

使用命令提示符编译程序。转到 D:/ > AWT 并键入以下命令。

D:\AWT>javac com	utorialspoint\gui\AwtControlDemo.java

如果没有错误,则表示编译成功。使用以下命令运行程序。

D:\AWT>java com.tutorialspoint.gui.AwtControlDemo

验证以下输出

AWT TextField

awt_controls.html