这个程序是一个简单的用户登录代码
可是为何输入账户密码 确认总是不对
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class LoginWindow extends JDialog implements ActionListener
{
JPanel p1=new JPanel();
JPanel p2=new JPanel();
JPanel p3=new JPanel();
JPanel p4=new JPanel();
JPanel p5=new JPanel();
JTextField txtUserName=new JTextField(15);
JPasswordField txtPassword=new JPasswordField(15);
JButton ok=new JButton("确定");
JButton cancel=new JButton("取消");
public LoginWindow()
{
setModal(true);
setBackground(Color.white);
Container contentPane=this.getContentPane();
contentPane.setLayout(new GridLayout(5,1));
p2.add(new JLabel("用户名:"));
p2.add(txtUserName);
p3.add(new JLabel("密 码:"));
p3.add(txtPassword);
p4.add(ok);
p4.add(cancel);
ok.addActionListener(this);
cancel.addActionListener(this);
txtUserName.addActionListener(this);
txtPassword.addActionListener(this);
contentPane.add(p1);
contentPane.add(p2);
contentPane.add(p3);
contentPane.add(p4);
contentPane.add(p5);
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setSize(300,200);
Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
setLocation((screen.width-300)/2,(screen.width-200)/2);
setTitle("登陆窗口");
setResizable(false);
setVisible(true);
}
/**
* @param args
*/
public static void main(String[] args) {
new LoginWindow();
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==ok||e.getSource()==txtPassword)
{
if(txtUserName.getText().trim().equals("abc")&&txtPassword.getPassword().toString().trim().equals("abc"))
this.dispose();
else
{
JOptionPane.showMessageDialog(null,"用户名或密码错误,请重新输入");
txtUserName.requestFocus();
txtUserName.setSelectionStart(0);
txtUserName.setSelectionEnd(txtUserName.getText().length());
}
}
else if(e.getSource()==cancel)
{
this.dispose();
System.exit(0);
}
else if(e.getSource()==txtUserName)
txtPassword.requestFocus();
}
}