Partager via


Contrôle ComboBox

Le contrôle ComboBox affiche une liste déroulante de valeurs prédéfinies et un champ de modification dans lequel l’utilisateur peut entrer une valeur. Pour associer ce contrôle à une propriété de chaîne ou d’entier, entrez le nom de la propriété dans la colonne Propriété de la table de contrôle .

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 Il s’agit du 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 Il s’agit du 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 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 sera utilisée. Pour spécifier le nombre de caractères que l’utilisateur peut entrer, ajoutez {n} après toutes les spécifications de police, où n est un entier positif.
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 a 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.
entier 0x00000000 0x00000010
La propriété associée au contrôle est une valeur de chaîne. La propriété associée au contrôle est une valeur entière.
Incluez ce bit dans le mot bit de la colonne Attributs de la table de contrôle pour définir cet attribut lors de la création du contrôle.
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.
triée non défini 0x00010000
Éléments affichés par ordre alphabétique. Éléments affichés dans l’ordre spécifié dans la table ListView .
Le contrôle interroge la table ComboBoxet, si le bit de style trié est défini, le ComboBox a le style CBS_SORT et affiche les éléments comme spécifié par ordre. Si ce bit de style n’est pas défini, les éléments sont affichés par ordre alphabétique.
ComboList non défini 0x00020000
Zone de liste modifiable avec champ d’édition. La zone de liste modifiable avec un champ de modification est remplacée par un champ de texte statique.
UsersLanguage 0x00000000 0x00100000
Polices créées dans la page de codes de base de données. Polices créées dans la page de codes d’interface utilisateur par défaut de l’utilisateur.

Remarques

Ce contrôle peut être créé à partir de la classe COMBOBOX à l’aide de la fonctionCreateWindowEx. Il a les styles CBS_AUTOHSCROLL, WS_TABSTOP, WS_GROUPet WS_CHILD. Si le bit ComboList est activé, il a également le style CBS_DROPDOWNLIST, sinon il a le style CBS_DROPDOWN.

La longueur du texte pouvant être entré peut être limitée en plaçant un nombre compris entre 0 et 2147483646 dans des accolades au début du champ Texte de la table de contrôle . Par exemple, si le champ de texte commence par {80}, la longueur de la chaîne est limitée à 80 caractères. Si aucune telle limite n’est fournie dans la table ou si 0 est spécifiée, la longueur est définie sur la valeur maximale possible (2147483646 caractères). Une valeur négative ou non numérique génère une erreur.

Pour la compatibilité avec les lecteurs d’écran, lors de la création d’une boîte de dialogue avec un contrôle ComboBox comme premier contrôle actif, vous devez rendre le champ de texte appartenant au champ de modification le premier contrôle actif dans la table de dialogue . Étant donné que le texte statique ne peut pas prendre le focus, lorsque la boîte de dialogue est créée, le champ de modification aura le focus initialement comme prévu. Cela garantit que les lecteurs d’écran affichent les informations appropriées.