swing之JTextField

JTextField组件用于创建文本框。文本框是用来接收用户的单行文本信息输入的区域。通常文本框用于接收用户信息或其他文本信息的输入。当用户输入文本信息后,如果为JTextField对象添加了事件处理,按回车键后就会触发一定的操作。
  JPasswordField是JTextField的子类,是一种特殊的文本框,也是用来接收单行文本信息输入的区域,但是会用回显字符串代替输入的文本信息。因此,JPasswordField组件也称为密码文本框。JPasswordField默认的是回显字符是”*”,用户可以自行设置回显字符。
  JTextField的常见构造方法有如下几种:JTextField():创建一个空文本框。JTextField(String text):创建一个具有出事文本信息text的文本框。JTextField(String text,int columns):创建一个具有出事文本信息text以及制定列数的文本框。
  JTextField的常用方法:void setText(String):设置显示内容。String getText():获取显示内容。  
  JPasswordField的构造方法有如下几种:JPasswordField():创建一个空的密码文本框。JPasswordField(String text):创建一个指定初始文本信息的密码文本框。JPasswordField(String text,int columns):创建一个指定文本和列数的密码文本框。JPasswordField(int columns):创建一个指定列数的密码文本框。  
  JPasswordField是JTextField的子类,因此JPasswordField也具有与JTextField类似的名称和功能的方法,此外,它还具有与JTextField类似的名称和功能的方法,此外,它还具有自己的独特方法:boolean echoCharIsSet():获取设置回显字符的状态。void setEchoChar(char):设置回显字符。void getEchoChar():获取回显字符。char[] getPassword():获取组件的文本。
代码实例如下

在这里插入代码片
```package dataExchange;
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
@SuppressWarnings("all")
public class DataExchangeFrame extends JFrame {
    
    public static final int TEXT_ROWS = 20;
    public static final int TEXT_COLUMNS = 40;
    private PasswordChooser dialog = null;
    private JTextArea textArea;
    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    DataExchangeFrame frame = new DataExchangeFrame();
                    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                    frame.setBounds(100, 100, 450, 300);
                    frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }
    /**
     * Create the frame.
     */
    public DataExchangeFrame() {
        JMenuBar mbar = new JMenuBar();
        setJMenuBar(mbar);
        JMenu fileMenu = new JMenu("File");
        mbar.add(fileMenu);
        JMenuItem connectItem = new JMenuItem("Connect");
        connectItem.addActionListener(new ConnectAction());
        fileMenu.add(connectItem);
        JMenuItem exitItem = new JMenuItem("Exit");
        exitItem.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                System.exit(0);
            }
        });
        fileMenu.add(exitItem);
        textArea = new JTextArea(TEXT_ROWS,TEXT_COLUMNS);
        add(new JScrollPane(textArea),BorderLayout.CENTER);
        pack();
    }
     public class ConnectAction implements ActionListener{
        public void actionPerformed(ActionEvent e) {
            if (dialog == null) {
                dialog = new PasswordChooser();
            if (dialog.showDialog(DataExchangeFrame.this, "Connect")) {
                User user = dialog.getUser();
                textArea.append("Username = " + user.getName() + ",password = " + (new String(user.getPassword())) + "\n");
            }
        }
    }
    }

运行结果

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值