Programm hängt sich bei Log In auf

JvKbF

Mitglied
Hey Leute,

ich wollte gerade ein Programm mit einem Log In am anfang schreiben, das mit dem Log In mache ich zum ersten mal.

Jetzt habe ich mein Log in Fenster und wenn man den Button "Log In" drückt, sollte man sich einloggen können und danach sich das hauptprogramm öffnen, allerdings hängt sich dann das gesamte Programm auf. noch schlimmer für mich persönlich ist aber dass sich die komplette GUI aufhängt .. hier mal mein quelltext:


Java:
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JFrame;
import javax.swing.JOptionPane;


public class LogListener implements ActionListener {

	
	static JFrame jf;
	
	@Override
	public void actionPerformed(ActionEvent arg0) {

		String[] userN_test = {"Bastian", "Valentin", "Daniel", "Maxi"};			// Test-usernames
		
		String[] passW_test = {"Dennstedt", "Weis", "Samborski", "Hauer" };			// Test-passwörter
		
		String userNein = login.userN.getText();
		
		String passWein = String.valueOf(login.passW.getPassword());
				
		int index =0;																// zum durchgehen der schleife 
		
		while ( index < userN_test.length ) {
			
			if ( userN_test[index].equals(userNein)) {								// Usernames werden überprüft

				if ( passWein.equals(passW_test)) {									// passwörter werden überprüft
						System.out.println("Log In Erfolgreich!");
						
						jf = new Frameos();

				}
			} else {
				index++;
				if ( index > userN_test.length ) {
					JOptionPane.showMessageDialog(null, "Passwort oder Username sind Fehlerhaft.", "FEHLER", JOptionPane.WARNING_MESSAGE);
				}
			}
		}
		
		
		
	}

}

.. hatte es schon mit einem try catch um die while schleife probiert .. aber das hat mir nichts gebracht ..
 
Wenn deine Bedingung passWein.equals(passW_test) falsch ist, zählst du den Index nicht hoch; dadurch kommst du in eine Unendlichschleife.
Und deine Bedingung ist immer falsch, denn passWein ist ein String und passW_test ist eine Array.
 

Zurück
Oben