Bindungskomponente <-> Container (Enabled-Eigenschaft)
-
05-07-2019 - |
Frage
Ich versuche nur, die beste Art und Weise zu arbeiten, eine ziemlich nützliche Funktion von Windows' Forms.Panel
in Java zu replizieren. Grundsätzlich, wenn Sie einen Windows Forms.Panel
deaktivieren, werden alle Steuer des Kindes sind deaktiviert zu setzen. Allerdings ist ihre Eigenschaft enabled ist bewahrt , so dass, wenn das der Panel
wieder aktiviert ist, jedes Kind-Steuerelement, das vor dem Panel deaktiviert wurde deaktiviert wurde, bleibt deaktiviert.
kann ich eine Unterkunft Hörer hinzufügen für eine JPanel
ausgelöst werden, wenn es aktiviert Eigenschaft geändert wird und dann durchlaufen die Komponenten des alle JPanel
und setzen Sie sie auf Behinderte, aber dies wird nicht der Komponente aktiviert Eigenschaften erhalten.
Irgendwelche Vorschläge?
Lösung
Eine komplexere Lösung kann in dem Disabled-Panel Eintrag. Intern verwendet es eine Sammlung wie von mlk vorgeschlagen, um die Komponenten zu verfolgen, die aktiviert wo. Selbst wenn Sie die vorgeschlagene Lösung nicht gefällt können Sie immer noch die Verwendung Utils Schwingen Klasse problemlos alle Komponenten auf der Platte zu erhalten.
Andere Tipps
Speichern Sie die deaktivierten Komponenten in einer Sammlung und diese Sammlung überprüfen, wenn sie wieder aktiviert.