Guden Tach!
Um zu überprüfen, ob alle Pflichtfelder gefüllt wurden, möchte ich gerne alle Controls eines JFrame-Formulars durchlaufen und ihren Namen überprüfen (Name wurde bereits eingetragen)
Naja, so hatte ich mir das jedenfalls vorgestellt. Dummerweise entält das Array controls nur ein Element. Erste Frage ist jetzt:
Wo finde ich den Container, in dem alle Controls abgespeichert sind?
Zweite Frage: Ich habe fast alle Controls zur Gruppierung in JPanels gepackt. Ergibt sich dadurch für mich ein Nachteil (falls es eine Lösung zur ersten Frage gibt)?
Danke schonmal fürs Lesen
Um zu überprüfen, ob alle Pflichtfelder gefüllt wurden, möchte ich gerne alle Controls eines JFrame-Formulars durchlaufen und ihren Namen überprüfen (Name wurde bereits eingetragen)
Code:
/**
* Überprüft die Pflichtfelder.
* @param pflichtfelder Namen der Controls, die überprüft werden sollen.
* @return false, wenn nicht in jedem Control Werte eingetragen wurden.
*/
public boolean pruefePflichtfelder(String[] pflichtfelder,
Component control) {
java.awt.Component[] controls = this.getComponents();
boolean ergebnis = true;
for (int i = 0; i < pflichtfelder.length && ergebnis; i++) {
for (int j = 0; j < controls.length && ergebnis; j++) {
if (controls[j].getName() != null) {
if (controls[j].getName().equals(pflichtfelder[i])) {
if (controls[j] instanceof javax.swing.JTextField) {
if (((javax.swing.JTextField) controls[j]).getText().equals("")) {
ergebnis = false;
control = controls[j];
}
}
}
}
}
}
return ergebnis;
}
Wo finde ich den Container, in dem alle Controls abgespeichert sind?
Zweite Frage: Ich habe fast alle Controls zur Gruppierung in JPanels gepackt. Ergibt sich dadurch für mich ein Nachteil (falls es eine Lösung zur ersten Frage gibt)?
Danke schonmal fürs Lesen