Encadernação componente <-> Container (propriedade Enabled)
-
05-07-2019 - |
Pergunta
Eu só estou tentando descobrir a melhor maneira de replicar um recurso útil bonita de Forms.Panel
do Windows' em Java. Basicamente, quando você desativar um Forms.Panel
Windows, todas do controle criança estão definidas para pessoas com deficiência também. No entanto, sua propriedade enabled é preservada de tal forma que, quando o a Panel
é habilitado novamente, qualquer controle filho que foi desativado antes que o Painel foi desativado, restos desativada.
posso adicionar um ouvinte propriedade para um JPanel
para ser disparado quando ele está habilitado propriedade é alterada e, em seguida, percorrer todos os componentes do JPanel
e configurá-los para pessoas com deficiência, mas isso não vai preservar do componente habilitado propriedades.
Todas as sugestões?
Solução
Uma solução mais complexa pode ser encontrada no Disabled Painel entrada. Internamente ele usa uma coleção como sugerido por mlk para controlar os componentes que onde habilitado. Mesmo se você não gosta da solução proposta você ainda pode usar os Utils balanço classe para facilmente obter todos os componentes do painel.
Outras dicas
Armazenar os componentes com deficiência em uma coleção e verificar esta coleção quando re-permitindo-lhes.