habe folgendes login window:
ein textfield für name, eins für password. dazu jeweils einen actionlistener.
und dann noch einen login button mit actionlistener.
der login soll nur gehen wenn die beiden booleans isNameCorrect und isPasswordCorrect true sind.
allerdings ist der wert anscheined immer auf true, ich bekomme nämlich immer "access allowed", egal ob ich vorher name und password angebe oder nicht.
ich hoffe es findet jemand den fehler...
ein textfield für name, eins für password. dazu jeweils einen actionlistener.
und dann noch einen login button mit actionlistener.
der login soll nur gehen wenn die beiden booleans isNameCorrect und isPasswordCorrect true sind.
allerdings ist der wert anscheined immer auf true, ich bekomme nämlich immer "access allowed", egal ob ich vorher name und password angebe oder nicht.
ich hoffe es findet jemand den fehler...
Code:
/*
* Created on 27.11.2004
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
package client;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;
/**
* @author CHUCKY
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
/**
* Login to enter the main programm.
*/
public class LoginWindow implements ActionListener
{
private JButton loginButton;
private JButton cancelButton;
private JLabel nameLabel;
private JLabel passwordLabel;
private JTextField nameTextField;
private JTextField passwordTextField;
private String[] names = { "kai", "gaby", "hans" };
private String[] passwords = { "a", "b", "c" };
private boolean isNameCorrect = false;
private boolean isPasswordCorrect = false;
/**
* Creates the Login Window.
*
*/
public LoginWindow()
{
JFrame iw = new JFrame("Login Window");
Container cp = iw.getContentPane();
cp.setLayout(new FlowLayout());
nameLabel = new JLabel("Enter Name: ");
passwordLabel = new JLabel("Enter Password");
nameTextField = new JTextField(30);
passwordTextField = new JTextField(30);
cp.add(nameLabel);
cp.add(nameTextField);
cp.add(passwordLabel);
cp.add(passwordTextField);
nameTextField.addActionListener(this);
passwordTextField.addActionListener(this);
nameTextField.setActionCommand("name");
passwordTextField.setActionCommand("password");
loginButton = new JButton("Login");
cancelButton = new JButton("Cancel");
loginButton.addActionListener(this);
cancelButton.addActionListener(this);
loginButton.setActionCommand("login");
cancelButton.setActionCommand("cancel");
cp.add(loginButton);
cp.add(cancelButton);
iw.setSize(400, 200);
iw.setVisible(true);
//iw.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
}
public void actionPerformed(ActionEvent evt)
{
if ( evt.getActionCommand().equals("name") )
{
for (int i=0; i<names.length; i++)
{
if ( ! names[i].equals(nameTextField.getText()) )
{
//System.out.println("name incorrect");
}
else
{
System.out.println("name correct");
isNameCorrect = true;
}
}
}
if ( evt.getActionCommand().equals("password") )
{
for (int i=0; i<passwords.length; i++)
{
if ( ! passwords[i].equals(passwordTextField.getText()) )
{
//System.out.println("password incorrect");
}
else
{
System.out.println("password correct");
isPasswordCorrect = true;
}
}
}
if ( evt.getActionCommand().equals("login") )
{
if ( (isNameCorrect = true) && (isPasswordCorrect = true) )
{
System.out.println("Access allowed");
//open new window .....
}
else
{
System.out.println("Access denied. Enter name and password again");
}
}
}
}