Eingabefelder gefüllt erst dann Button klickbar

Tutu_55

Mitglied
Hallo alle zusammen,

ich bin ziemlich anfänger in Java Swing Programmierung. Ich brauche dringend eure hilfe, da ich selbst nicht die Lösung finde.
Ich habe einen Programm erstellt, indem der User 3 Eingabefelder eingeben muss ( ID, Name, Algorithmusnamen) und einen Button (suchen).
Die eingegebenen Daten werden dann in eine Datenbank gespeichert.

Nun zu meinen Problem. Ich möchte den Button "suchen" erst dann anklickbar erscheinen lassen, wenn die anderen drei Felder eingegeben sind.
Nur ich weiß nicht wo ich die Funktion hinschreiben soll.

Das ist mein Funktion für die Abfrage:
private boolean checktext(){
Code:
		if(idTextfield.getText().length() > 0 && nameTextfield.getText().length() > 0) {
			sucheButton.setEnabled(true);
			return true;
		
		}else{
			sucheButton.setEnabled(false);
			return false;
		}

		}

Liebe Grüße
Tutu_55
 
Zuletzt bearbeitet:
du könntest zb einfach Listener auf die Textfelder setzen die das prüfen? Am effektivsten wäre meiner Meinung nach ein FocusListener, da dann überflüssige Prüfungen (zb. nach jedem eingetippten Buchstaben) wegfallen...
 
Zuletzt bearbeitet:
Aber NoXiD hat dir doch schon so eine tolle Lösung geliefert, wieso jetzt der KeyListener?
Damit bekommst du doch bei jedem Tastenanschlag auf den Feldern ein Event, dass du irgendwie verarbeitest (du wirst ja vermutlich bei jedem Event deinen check durchführen).
Mit dem FocusListener wäre das sehr viel performanter, da du ja eigentlich den check nur bei Verlassen der Textfelder durchführen musst.
 

Zurück
Oben