Элемент управления SelectionTree

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

Элемент управления SelectionTree автоматически публикует следующие события управления в Windows XP или более ранних операционных системах. Элемент управления SelectionTree публикует эти события, когда выбранный элемент изменяется с одного узла на другой. Если в дереве выбора нет узлов, элемент управления публикует эти события и удаляет содержимое элементов управления, которые подписываются на событие. Эти элементы ControlEvent не требуются для перечисления в таблице ControlEvent.

Событие элемента управления Description
SelectionAction Публикует строку из таблицы UIText, описывающей выделенный элемент.
SelectionBrowse Создает диалоговое окно обзора, используемое для изменения пути выделенного элемента.
SelectionDescription Публикует строку из таблицы компонентов, описывающей выделенный элемент.
SelectionNoItems Удаляет описательный текст или отключает кнопки устаревшего элемента.
SelectionPath Публикует путь для выделенного элемента.
SelectionPathOn Публикует, существует ли путь выбора, связанный с выбранной функцией.
SelectionSize Публикует размер выделенного элемента.

 

Начиная с систем Windows Server 2003, элементы управления SelectionTree публикуют все события в приведенной выше таблице и, кроме того, опубликуйте DoAction ControlEvent или SetProperty ControlEvent. Записи необходимо добавить в таблицу ControlEvent для публикации DoAction или SetProperty ControlEvents.

Событие элемента управления Description
DoAction Уведомляет установщик о выполнении пользовательского действия.
SetProperty Задает для свойства новое значение.

 

Начиная с установщика Windows версии 3.0 элементы управления SelectionTree публикуют событие, которое выполняет пользовательские действия , перечисленные в таблице ControlEvent. Элемент управления SelectionTree публикует это событие всякий раз, когда выбор компонентов изменяется в элементе управления или при выборе другого состояния выбора для текущей функции. Пользовательские действия выполняются при каждом публикации события. Элемент управления SelectionTree отправляет сведения в настраиваемое действие, задав значения следующих свойств. Все эти свойства очищаются при закрытии элемента управления SelectionTree.

Установщик Windows 2.0: не поддерживается. Элемент управления SelectionTree не публикует событие и не задает следующие свойства.

Свойство Description
MsiSelectionTreeSelectedFeature Имя выбранной функции в поле "Функция" таблицы "Компоненты".
MsiSelectionTreeSelectedAction Состояние действия установки выбранной функции. Это значение может быть INSTALLSTATE_ABSENT, INSTALLSTATE_LOCAL, INSTALLSTATE_SOURCE или INSTALLSTATE_ADVERTISED.
MsiSelectonTreeChildrenCount Число прямых дочерних узлов.
MsiSelectionTreeInstallingChildrenCount Число прямых дочерних узлов, INSTALLSTATE_LOCAL, INSTALLSTATE_SOURCE или INSTALLSTATE_ADVERTISED.
MsiSelectionTreeSelectedCost Стоимость установки выбранной функции в единицах 512 байт.
MsiSelectionTreeChildrenCost Стоимость установки всех дочерних функций в единицах 512 байт.
MsiSelectionTreeSelectedPath Путь, в котором устанавливается выбранная функция. Определяется только в том случае, если компонент устанавливается как INSTALLSTATE_LOCAL.

 

Примечание.

Содержимое поля "Текст" таблицы control никогда не отображается элементом управления SelectionTree. Вместо этого это поле указывает стиль текста, отображаемого элементом управления, и содержит описание элемента управления, используемого служебными программами проверки экрана. Чтобы задать стиль шрифта и шрифта текстовой строки, префиксировать строку отображаемых символов с помощью {\style} или {&style}. Где стиль — это идентификатор, указанный в столбце TextStyle таблицы TextStyle. Если ни из них нет, но свойство DefaultUIFont определяется как допустимый текстовый стиль, используется этот шрифт. Приведенные ниже сведения считываются служебными программами проверки экрана в качестве описания элемента управления. См . специальные возможности.

 

Атрибуты элемента управления

С этим элементом управления можно использовать следующие атрибуты. Чтобы изменить значение атрибута с помощью события, подпишите элемент управления ControlEvent в таблице EventMapping и перечислите идентификатор атрибута в столбце атрибута. Введите идентификатор ControlEvent в столбце событий.

Идентификатор атрибута Шестнадцатеричный бит Description
НепрямаяpropertyName Имя косвенного свойства, связанного с элементом управления. Если задан бит косвенного атрибута, элемент управления отображает или изменяет значение свойства, имеющего это имя. Если задан бит косвенного атрибута, это имя также является значением свойства, указанного в столбце свойств таблицы Control.
Занимаемая должность Положение элемента управления в диалоговом окне. Введите ширину, высоту и координаты левого угла элемента управления в столбцы Width, Height, X и Y таблицы Control. Используйте единицы установщика для длины и расстояния.
PropertyName Имя свойства, связанного с этим элементом управления. Если бит косвенного атрибута не задан, элемент управления отображает или изменяет значение свойства, имеющего это имя. Этот атрибут указан в столбце "Свойство" таблицы Control.
PropertyValue Текущее значение свойства, отображаемое или измененное этим элементом управления. Если бит косвенного атрибута не задан, это значение PropertyName. Если задан бит непрямого атрибута, это значение IndirectPropertyName. Если атрибут изменяется, элемент управления отражает новое значение.
Text Отображает текст в экранах в соответствии с текстом, введенным в текстовый столбец таблицы Control. См . специальные возможности.
Visible 0x00000000 0x00000001
Скрытый элемент управления. Видимый элемент управления.
Включите этот бит в битовое слово столбца "Атрибуты" в таблице Control, чтобы сделать элемент управления видимым или скрытым при его создании.
Вы также можете скрыть или показать элемент управления с помощью таблицы ControlCondition.
Включено 0x00000000 0x00000002
Управление в отключенном состоянии. Управление включенным состоянием.
Включите этот бит в битовое слово в столбец "Атрибуты" элемента управления , чтобы включить элемент управления при создании.
Вы также можете включить или отключить элемент управления с помощью таблицы ControlCondition.
Затонувший 0x00000000 0x00000004
Отображает визуальный стиль по умолчанию. Отображает элемент управления с 3D-изображением.
Включите эти биты в битовое слово в столбец "Атрибуты" таблицы Control.
Косвенные 0x00000000 0x00000008
Элемент управления отображает или изменяет значение свойства в столбце "Свойство" таблицы Control. Элемент управления отображает или изменяет значение свойства, которое содержит идентификатор, указанный в столбце свойств таблицы Control.
Определяет, ссылается ли свойство, связанное с этим элементом управления, косвенно.
RTLRO 0x00000000 0x00000020
Текст в элементе управления отображается в порядке чтения слева направо. Текст в элементе управления отображается в порядке чтения справа налево.
RightAligned 0x00000000 0x00000040
Текст в элементе управления выровнен по левому краю. Текст в элементе управления выровнен справа.
LeftScroll 0x00000000 0x00000080
Полоса прокрутки расположена справа от элемента управления. Полоса прокрутки расположена слева от элемента управления.
Bidi 0x000000E0 Задайте это значение для сочетания атрибутов RTLRO, RightAligned и LeftScroll .

 

Замечания

Этот элемент управления можно создать из класса WC_TREEVIEW с помощью функции CreateWindowEx. Он содержит стили WS_BORDER, TVS_HASLINES, TVS_HASBUTTONS, TVS_LINESATROOT, TVS_DISABLEDRAGDROP, TVS_SHOWSELALWAYS, WS_CHILD, WS_TABSTOP и WS_GROUP.

Дерево выбора заполняется только при вызове действия CostInitialize и действия CostFinalize.

Следующая строка в таблице UIText связана с этим элементом управления.

Срок Description
AbsentPath
Путь, отображаемый для элемента в отсутствующем состоянии.

 

Следующие шесть строк используются для отображения числа выбранных дочерних элементов и размера, связанного с выделенным элементом:

  • SelChildCostPos
  • SelChildCostNeg
  • SelParentCostPosPos
  • SelParentCostPosNeg
  • SelParentCostNegPos
  • SelParentCostNegNeg

Следующие строки используются для отображения доступных параметров выбора элемента во всплывающем меню:

  • MenuAbsent
  • MenuLocal
  • MenuCD
  • MenuNetwork
  • MenuAllLocal
  • MenuAllCD
  • MenuAllNetwork

Следующие строки используются для объяснения текущего выбора в Элементе управления SelectionDescription ControlEvent.

  • SelAbsentAbsentAbsent
  • SelAbsentLocal
  • SelAbsentCD
  • SelAbsentNetwork
  • SelLocalAbsent
  • SelLocalLocalLocal
  • SelLocalCD
  • SelLocalNetwork
  • SelCDAbsent
  • SelNetworkAbsent
  • SelCDLocal
  • SelNetworkLocal
  • SelCDCD
  • SelNetworkNetworkNetworkNetworkWork

Следующие четыре локализованные строки используются в форматировании размера файла:

  • Байт
  • КБ
  • МБ
  • ГБ