Контейнер привязки <-> Контейнер (свойство Enabled) - PullRequest
0 голосов
/ 11 сентября 2009

Я просто пытаюсь найти лучший способ воспроизвести довольно полезную функцию Windows * Forms.Panel в Java. Обычно при отключении Windows Forms.Panel все дочерние элементы управления также отключаются. Однако их свойство enabled сохраняется , поэтому при повторном включении Panel для любого дочернего элемента управления, который был отключен до отключения Panel, остается отключенным.

Я могу добавить прослушиватель свойства для JPanel, который будет срабатывать при изменении свойства enabled, а затем циклически перебирать все компоненты JPanel и устанавливать их в отключенное состояние, но это не сохранит включенные свойства компонента.

Есть предложения?

Ответы [ 2 ]

2 голосов
/ 11 сентября 2009

Более сложное решение можно найти в записи Disabled Panel . Внутренне он использует коллекцию, предложенную mlk, для отслеживания компонентов, которые были включены. Даже если вам не нравится предлагаемое решение, вы все равно можете использовать класс Swing Utils , чтобы легко получить все компоненты на панели.

1 голос
/ 11 сентября 2009

Сохраните отключенные компоненты в коллекции и проверьте эту коллекцию при повторном включении их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...