Я думал о централизации этой функциональности, имея единственный метод, который получает аргумент AppState, и он имеет дело с изменением свойств всех элементов GUI на основе этого аргумента. Каждый раз, когда приложение меняет свое состояние (готово, занято, загружается так частично занято и т. Д.), Эта функция вызывается с соответствующим состоянием (или, возможно, это бит поле или что-то еще), и оно делает свою магию.Обработка свойств элемента GUI для состояния приложения
Если я рассеивать изменения состояния элементов графического интерфейса повсюду, то становится очень легко забыть, что когда приложение находится в некотором состоянии, это другой виджет там должен быть отключен тоже и т.д.
Любые другие способы борьбы с такими вещами?
Нет, это было просто самое легкое, что мозг штурмовал ответ. Другой способ сделать это может заключаться в создании «энхансера», такого как tooltip-component, добавление его в форму, и все компоненты в форме получают пару новых свойств, таких как «UIstate» и другие, которые могут быть изменены. – Stefan 2008-12-03 21:06:33