SelectionTree, contrôle
Ce contrôle permet à un utilisateur de modifier l’état de sélection des fonctionnalités répertoriées dans la table de fonctionnalités . Le contrôle est associé à une propriété de chaîne que l’utilisateur peut définir par une boîte de dialogue Parcourir . Vous pouvez associer le contrôle à une propriété en entrant le nom de la propriété dans la colonne Propriété de la table de contrôle .
Le contrôle SelectionTree publie automatiquement les événements de contrôle suivants sur les systèmes d’exploitation Windows XP ou antérieurs. Le contrôle SelectionTree publie ces événements lorsque l’élément sélectionné est modifié d’un nœud à un autre. Si l’arborescence de sélection n’a aucun nœud, le contrôle publie ces événements et efface le contenu des contrôles qui s’abonnent à l’événement. Ces ControlEvents ne doivent pas être répertoriés dans la table ControlEvent.
Événement de contrôle | Description |
---|---|
SelectionAction | Publie une chaîne à partir de la table UIText décrivant l’élément mis en surbrillance. |
SelectionBrowse | Génère une boîte de dialogue Parcourir utilisée pour modifier le chemin d’accès de l’élément mis en surbrillance. |
SelectionDescription | Publie une chaîne à partir de la table de fonctionnalités décrivant l’élément mis en surbrillance. |
SelectionNoItems | Supprime le texte descriptif ou désactive les boutons d’un élément obsolète. |
SelectionPath | Publie le chemin d’accès de l’élément mis en surbrillance. |
SelectionPathOn | Publie s’il existe ou non un chemin de sélection associé à la fonctionnalité actuellement sélectionnée. |
SelectionSize | Publie la taille de l’élément mis en surbrillance. |
À compter des systèmes Windows Server 2003, SelectionTree contrôle publie tous les événements du tableau ci-dessus, et publie également un DoAction ControlEvent ou un SetProperty ControlEvent. Les enregistrements doivent être ajoutés à la table ControlEvent pour publier DoAction ou SetProperty ControlEvents.
Événement de contrôle | Description |
---|---|
DoAction | Avertit le programme d’installation d’exécuter une action personnalisée. |
setProperty | Définit une propriété sur une nouvelle valeur. |
À compter de Windows Installer version 3.0, SelectionTree contrôle la publication d’un événement qui exécute actions personnalisées répertoriées dans la table ControlEvent. Le contrôle SelectionTree publie cet événement chaque fois que la sélection de fonctionnalités change dans le contrôle ou chaque fois qu’un état de sélection différent est choisi pour la fonctionnalité actuelle. Les actions personnalisées s’exécutent chaque fois que l’événement est publié. Le contrôle SelectionTree envoie des informations à l’action personnalisée en définissant les valeurs des propriétés suivantes. Toutes ces propriétés sont effacées lorsque le contrôle SelectionTree est fermé.
Windows Installer 2.0 : Non pris en charge. Le contrôle SelectionTree ne publie pas l’événement et ne définit pas les propriétés suivantes.
Propriété | Description |
---|---|
MsiSelectionTreeSelectedFeature | Nom de la fonctionnalité sélectionnée dans le champ Fonctionnalité de la table Fonctionnalité. |
MsiSelectionTreeSelectedAction | État de l’action d’installation de la fonctionnalité sélectionnée. La valeur peut être INSTALLSTATE_ABSENT, INSTALLSTATE_LOCAL, INSTALLSTATE_SOURCE ou INSTALLSTATE_ADVERTISED. |
MsiSelectonTreeChildrenCount | Nombre de nœuds enfants directs. |
MsiSelectionTreeInstallingChildrenCount | Nombre de nœuds enfants directs INSTALLSTATE_LOCAL, INSTALLSTATE_SOURCE ou INSTALLSTATE_ADVERTISED. |
MsiSelectionTreeSelectedCost | Coût de l’installation de la fonctionnalité sélectionnée en unités de 512 octets. |
MsiSelectionTreeChildrenCost | Coût de l’installation de toutes les fonctionnalités enfants en unités de 512 octets. |
MsiSelectionTreeSelectedPath | Chemin d’accès où la fonctionnalité sélectionnée est installée. Défini uniquement si la fonctionnalité est installée en tant que INSTALLSTATE_LOCAL. |
Note
Le contenu du champ Texte de la table de contrôle n’est jamais affiché par le contrôle SelectionTree. Au lieu de cela, ce champ spécifie le style de texte à afficher par le contrôle et contient une description du contrôle utilisé par les utilitaires de révision d’écran. Pour définir la police et le style de police d’une chaîne de texte, préfixez la chaîne de caractères affichés avec {\style} ou {&style}. Où le style est un identificateur répertorié dans la colonne TextStyle de la table TextStyle . Si aucun de ces éléments n’est présent, mais que la propriété DefaultUIFont est définie comme un style de texte valide, cette police est utilisée. Les informations suivantes sont lues par les utilitaires de révision d’écran comme description du contrôle. Consultez d’accessibilité.
Attributs de contrôle
Vous pouvez utiliser les attributs suivants avec ce contrôle. Pour modifier la valeur d’un attribut à l’aide d’un événement, abonnez-vous au contrôle à un ControlEvent dans la table EventMapping et répertoriez l’identificateur de l’attribut dans la colonne Attribut. Entrez l’identificateur de ControlEvent dans la colonne Événement.
Identificateur d’attribut | Bit hexadécimal | Description |
---|---|---|
indirectPropertyName | Nom d’une propriété indirecte associée au contrôle. Si le bit d’attribut indirect est défini, le contrôle affiche ou modifie la valeur de la propriété portant ce nom. Si le bit d’attribut indirect est défini, ce nom est également la valeur de la propriété répertoriée dans la colonne Propriété de la table de contrôle . | |
position | Position du contrôle dans la boîte de dialogue. Entrez la largeur, la hauteur et les coordonnées du contrôle dans les colonnes Width, Height, X et Y de la table contrôle . Utilisez unités d’installation pour la longueur et la distance. |
|
PropertyName | Nom de la propriété associée à ce contrôle. Si le bit d’attribut indirect n’est pas défini, le contrôle affiche ou modifie la valeur de la propriété portant ce nom. Cet attribut est spécifié dans la colonne Propriété de la table de contrôle . | |
PropertyValue | Valeur actuelle de la propriété affichée ou modifiée par ce contrôle. Si le bit d’attribut indirect n’est pas défini, il s’agit de la valeur de PropertyName. Si le bit d’attribut indirect est défini, il s’agit de la valeur indirectPropertyName. Si l’attribut change, le contrôle reflète la nouvelle valeur. | |
texte | Affiche du texte dans les lecteurs d’écran en fonction du texte entré dans la colonne Texte du tableau de contrôle . Consultez d’accessibilité. | |
visible | 0x00000000 0x00000001 |
Contrôle masqué. Contrôle visible. Incluez ce bit dans le mot de bits de la colonne Attributs de la table de contrôle pour rendre le contrôle visible ou masqué lors de sa création. Vous pouvez également masquer ou afficher un contrôle à l’aide de la table ControlCondition. |
activé | 0x00000000 0x00000002 |
Contrôle dans un état désactivé. Contrôle dans un état activé. Incluez ce bit dans le mot bit dans la colonne Attributs de l'de contrôle pour activer le contrôle lors de la création. Vous pouvez également activer ou désactiver un contrôle à l’aide de la table ControlCondition. |
Sunken | 0x00000000 0x00000004 |
Affiche le style visuel par défaut. Affiche le contrôle avec une apparence 3D enfoncée. Incluez ces bits dans le mot de bits dans la colonne Attributs de la table de contrôle . |
indirect | 0x00000000 0x00000008 |
Le contrôle affiche ou modifie la valeur de la propriété dans la colonne Propriété de la table de contrôle . Le contrôle affiche ou modifie la valeur de la propriété qui contient l’identificateur répertorié dans la colonne Propriété de la table De contrôle. Détermine si la propriété associée à ce contrôle est référencée indirectement. |
RTLRO | 0x00000000 0x00000020 |
Le texte du contrôle s’affiche dans l’ordre de lecture de gauche à droite. Le texte du contrôle s’affiche dans l’ordre de lecture de droite à gauche. |
aligné à droite | 0x00000000 0x00000040 |
Le texte du contrôle est aligné à gauche. Le texte du contrôle est aligné à droite. |
leftScroll | 0x00000000 0x00000080 |
La barre de défilement se trouve sur le côté droit du contrôle. La barre de défilement se trouve sur le côté gauche du contrôle. |
BiDi | 0x000000E0 | Définissez cette valeur pour une combinaison des attributs RTLRO, RightAlignedet LeftScroll. |
Remarques
Ce contrôle peut être créé à partir de la classe WC_TREEVIEW à l’aide de la fonctionCreateWindowEx. Il a les styles WS_BORDER, TVS_HASLINES, TVS_HASBUTTONS, TVS_LINESATROOT, TVS_DISABLEDRAGDROP, TVS_SHOWSELALWAYS, WS_CHILD, WS_TABSTOPet WS_GROUP.
L’arborescence de sélection n’est remplie que si l’action CostInitialize et 'action CostFinalize ont été appelées.
La chaîne suivante dans la table UIText est liée à ce contrôle.
Terme | Description |
---|---|
AbsentPath |
Chemin d’accès affiché pour un élément dans l’état absent. |
Les six chaînes suivantes sont utilisées pour afficher le nombre d’enfants sélectionnés et la taille associée à l’élément mis en surbrillance :
- SelChildCostPos
- SelChildCostNeg
- SelParentCostPosPos
- SelParentCostPosNeg
- SelParentCostNegPos
- SelParentCostNegNeg
Les chaînes suivantes permettent d’afficher les options de sélection disponibles pour un élément dans un menu contextuel :
- MenuAbsent
- MenuLocal
- MenuCD
- MenuNetwork
- MenuAllLocal
- MenuAllCD
- MenuAllNetwork
Les chaînes suivantes permettent d’expliquer la sélection actuelle dans la SelectionDescription ControlEvent.
- SelAbsentAbsent
- SelAbsentLocal
- SelAbsentCD
- SelAbsentNetwork
- SelLocalAbsent
- SelLocalLocal
- SelLocalCD
- SelLocalNetwork
- SelCDAbsent
- SelNetworkAbsent
- SelCDLocal
- SelNetworkLocal
- SelCDCD
- SelNetworkNetwork
Les quatre chaînes localisées suivantes sont utilisées pour mettre en forme la taille d’un fichier :
- Octets
- KO
- MO
- GO