1.概述
JPasswordField,密码框。JPasswordField 继承自 JTextField,只是显示输入的内容时用特定的字符替换显示(例如 * 或 ●),用法和 JTextField 基本一致。JPasswordField 常用构造方法:
JPasswordField()
JPasswordField(String text)
JPasswordField(int columns)
JPasswordField(String text, int columns)
JPasswordField 常用方法:
char[] getPassword()
void setText(String text)
void setFont(Font font)
void setForeground(Color fg)
void setHorizontalAlignment(int alignment)
void setEchoChar(char c)
void setEditable(boolean b)
boolean isFocusOwner()
void setEnabled(boolean b)
JPasswordField 常用监听器:
void addFocusListener(FocusListener listener)
textField.getDocument().addDocumentListener(DocumentListener listener)
void addKeyListener(KeyListener listener)
2.代码实例
package com.xiets.swing;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class Main {
public static void main(String[] args) throws AWTException {
JFrame jf = new JFrame("测试窗口");
jf.setSize(300, 300);
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
final JPasswordField passwordField = new JPasswordField(10);
panel.add(passwordField);
JButton btn = new JButton("提交");
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
System.out.println("提交,密码为: " + new String(passwordField.getPassword()));
}
});
panel.add(btn);
jf.setContentPane(panel);
jf.setVisible(true);
}
}