Архитектура, в которой каждый элемент управления имеет «измененный» обработчик событий, который обновляет основную структуру, имеет смысл в приложении, где пользователь может манипулировать только одним элементом управления за раз. Если события для каждого элемента управления имеют одинаковую сигнатуру, то, надеюсь, код имеет только один метод-обработчик - если в кодовой базе каждый элемент управления имеет свой собственный метод с таким же идентичным кодом обновления основной структуры, то это хорошее место для рефакторинга .
Если каждый элемент управления имеет разные свойства и разные вещи, которые он должен делать с основной структурой, то эта архитектура обработчика нескольких событий является совершенно разумной.
Одна вещь, которая, возможно, не имеет смысл, - это ваша индикация того, что графический интерфейс обновлен / перекрашен / обновлен до того, как новая управляющая информация будет отправлена на устройство. Однако, если время, необходимое для обеих операций, минимально, это не имеет никакого значения.
Предупреждение - в основном рассылка не по теме: Наконец, я предполагаю из вашего описания, что графический интерфейс пользователя представляет собой стандартную звуковую накладку, смонтированную в стойке. Компонентная вещь. Лично я ненавижу эти вещи. Они хорошо выглядят ( вроде , иногда ), но элементы управления - это просто боль.
Например, типичным регулятором ручки манипулируют, щелкая по нему, а затем перетаскивая вверх и вниз (или иногда вправо и влево). Это функционально (хотя это не так, как работает «настоящая» ручка), хотя я часто нахожу, что сам курсор мыши затеняет и без того малозаметную черную индикаторную линию на ручке (а затем я двигаю мышь так что я вижу, что является проблемой). Я использовал некоторые элементы управления, которые требуют кругового движения, как настоящая ручка, но они полезны только в том случае, если они большие.
Типичное управление тумблером - это еще один незначительный PITA, требующий от вас щелкнуть крошечную вещь и затем переместить ее на небольшое расстояние. Что касается стандартных элементов управления в любой ОС, то, как правило, верно одно: они некрасивы, но по какой-то причине они некрасивы, а причина в простоте использования.
Наконец, все преимущество пользовательского интерфейса экрана компьютера перед реальным аппаратным интерфейсом пользователя состоит в том, что пользовательский интерфейс компьютера может использовать преимущества изменения размера и изменения порядка элементов интерфейса на лету. Это преимущество выбрасывается в окно, когда вы сознательно делаете свой интерфейс похожим на кусок металла или пластика (или деревянного зерна).