Обзор ControlEvent
ControlEvents аналогичны сообщениям Microsoft Windows в приложениях на основе Win32. Однако вместо создания функции обратного вызова для получения сообщений Windows и отправки сообщений Windows с помощью функции SendMessage установщик пользовательского интерфейса и элементов управления публикуют ControlEvents. Другие контролы и инсталлятор можно указать, чтобы подписаться на определенные события управления, которые затем изменят атрибуты подписанного контрола. Чтобы добавить рабочие элементы управления в диалоговые окна, автор пользовательского интерфейса указывает публикацию ControlEvents в таблице ControlEvent и подписывает элементы управления на ControlEvents в таблице EventMapping .
Установщик опубликует следующие события для подписанных элементов управления, перечисленных в таблице EventMapping. Элемент управления ProgressBar или элемент управления Billboard обычно подписываются на SetProgress, остальными управляют с помощью текстовых элементов управления.
Элемент управления Оставшееся время ControlEvent
Следующие события инициируются элементом управления, когда выделенный элемент перемещается в элементе управления SelectionTree или в элементе управления DirectoryList. Элементы управления подписывания должны находиться в одном диалоговом окне и перечислены в таблице EventMapping.
Элемент управления SelectionDescription ControlEvent
ДействиеВыбора СобытиеКонтроля
Следующие ControlEvents можно опубликовать по усмотрению пользователя, взаимодействуя с элементом управления PushButton или с элементом управления CheckBox в диалоговом окне. Элемент управления "Флажок" может публиковать только события AddLocal, AddSource, Remove, DoAction и SetProperty. С помощью версий установщика Windows, которые поставлялись с Windows Server 2003 и более поздними версиями, контрол SelectionTree может публиковать DoAction, ControlEvent и SetProperty ControlEvents. Автор пользовательского интерфейса должен перечислить событие управления (ControlEvent) в таблице . Обработчик пользовательского интерфейса установщика является подписчиком этих событий.
Добавить источник ControlEvent
CheckExistingTargetPath ControlEvent
ValidateProductID ControlEvent
Элемент управления PushButton может передавать следующие события элементу управления SelectionTree или элементу управления DirectoryList в том же диалоговом окне. Элемент управления PushButton должен быть указан в таблице ControlEvent, а элементы управления подписывания должны быть перечислены в таблице EventMapping.
DirectoryListOpen ControlEvent
События управления обычно требуют, чтобы пользовательский интерфейс выполнялся на уровне полного пользовательского интерфейса. Большинство событий управления (ControlEvents) не будут работать с сокращенным пользовательским интерфейсом или базовым пользовательским интерфейсом, так как эти уровни отображают только немодальные диалоговые окна. События ActionText, AddSource, SetProgress, TimeRemaining и ScriptInProgress являются исключениями и будут работать в сокращенном или базовом пользовательском интерфейсе. Дополнительные сведения об уровнях пользовательского интерфейса см. в разделе .
Вы можете выполнять пользовательские действия, публикуя элемент управления ControlEvent из элемента управления PushButton или элемент управления Checkbox. Добавьте запись в таблицу ControlEvent с именами диалогового окна и элементом управления, публикующего ControlEvent. Этот элемент управления должен опубликовать DoAction ControlEvent уведомляя установщика о выполнении пользовательского действия. В системах Windows XP или более ранних версий нельзя запускать пользовательское действие, вызывая событие ControlEvent из элемента управления SelectionTree.
Дополнительные сведения о конкретных элементах ControlEvents см. в списке стандартных ControlEvents в справочнике по пользовательскому интерфейсу.