我想在Swing中检查用户名和密码。
该检查适用于用户名,但不适用于JPaswordfield。我正在发布相关代码:
//Here I get the password Char[] pwd = jt1.getPassword(); String s = new String(pwd); //converting char to string String p = s; //In the JButton checking username and password(Username check works fine but not passwordfield) jb.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if ((jt.getText().length()) == 0) { JFrame jf1 = new JFrame("UserName"); jf1.setSize(401, 401); //jf1.setVisible(true); jf1.setDefaultCloseOperation(jf1.EXIT_ON_CLOSE); JOptionPane.showMessageDialog(jf1, "User Name is empty"); } else if((p.length()) == 0) { JFrame jf1 = new JFrame("Password"); jf1.setSize(401, 401); //jf1.setVisible(true); jf1.setDefaultCloseOperation(jf1.EXIT_ON_CLOSE); JOptionPane.showMessageDialog(jf1, "Password is empty"); } else if ((p.length() == 0) && (jt.getText().length()) == 0) { JFrame jf1 = new JFrame("UserName and Password"); jf1.setSize(401, 401); //jf1.setVisible(true); jf1.setDefaultCloseOperation(jf1.EXIT_ON_CLOSE); JOptionPane.showMessageDialog(jf1, "Username and Password is empty"); } else { //go to another method} Can someone help
非常简单地获取文本,使用JPasswordField#getPassword()该文本返回char[]文本的a,然后简单地获取数组的长度并检查它是否等于0:
JPasswordField#getPassword()
char[]
JPasswordField jpf... if(jpf.getPassword().length == 0) { // it is empty }else { // it is not empty }