Composant de liaison < - > Conteneur (propriété activée)
-
05-07-2019 - |
Question
J'essaie simplement de trouver le meilleur moyen de reproduire une fonctionnalité très utile du Forms.Panel
de Windows en Java. En gros, lorsque vous désactivez un Forms.Panel
Windows, tous les contrôles enfants sont également désactivés. Cependant, leur propriété activée est conservée , de sorte que, lorsque le Panel
est réactivé, tout contrôle enfant qui a été désactivé avant la désactivation du Panel, reste désactivé.
Je peux ajouter un écouteur de propriété pour qu'un JPanel
soit déclenché lorsqu'il est modifié, puis fait défiler tous les composants JPanel
et les désactive. , mais cela ne préservera pas les propriétés activées du composant.
Des suggestions?
La solution
Vous trouverez une solution plus complexe dans le panneau désactivé entrée. En interne, il utilise une collection suggérée par mlk pour suivre les composants activés. Même si vous n'aimez pas la solution proposée, vous pouvez quand même utiliser le Swing Utils classe pour obtenir facilement tous les composants du panneau.
Autres conseils
Stockez les composants désactivés dans une collection et vérifiez cette collection lors de leur réactivation.