ComboBox, contrôle

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

Attributs du 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 le contrôle à un ControlEvent, dans la table EventMapping et répertoriez l’identificateur de l’attribut dans la colonne d’attribut. Entrez l’identificateur du ControlEvent, dans la colonne d’é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é figurant 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 la largeur, la hauteur, le X et les colonnes Y de la table de contrôle. Utilisez les 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 de IndirectPropertyName. Si l’attribut change, le contrôle reflète la nouvelle valeur.
Text Pour définir la police et le style de police d’une chaîne de texte, ajoutez le préfixe { \ style} ou {&style} à la chaîne de caractères affichés. Où style est un identificateur figurant dans la colonne TextStyle de la table TextStyle. Si aucun de ces deux 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 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 d’attributs dans 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 de bits dans la colonne attributs du 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 enfoncée, 3D et un look.
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 figurant 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.
Integer 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 de bits de la colonne d’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 est affiché dans l’ordre de lecture de gauche à droite. Le texte du contrôle est affiché dans l’ordre de lecture de droite à gauche.
RightAligned 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ées ne pas définir 0x00010000
Éléments affichés par ordre alphabétique. Éléments affichés dans l’ordre spécifié dans le tableau ListView.
Le contrôle interroge la table de zone de liste déroulante, et si le bit de style trié est défini, la zone de liste déroulante utilise le _ style de tri CBS et affiche les éléments comme spécifié par le classement. Si ce bit de style n’est pas défini, les éléments sont affichés par ordre alphabétique.
ComboList ne pas définir 0x00020000
Zone de liste déroulante avec le champ d’édition. La zone de liste déroulante avec le champ d’édition est remplacée par un champ de texte statique.
UsersLanguage 0x00000000 0x00100000
Polices créées dans la page de codes de la base de données. Polices créées dans la page de codes de l’interface utilisateur par défaut de l’utilisateur.

Notes

Ce contrôle peut être créé à partir de la classe COMBOBOX à l’aide de la fonction CreateWindowEx . Il possède les styles _ CBS AUTOHSCROLL, WS _ TABSTOP, WS _ Group et WS _ Child . Si le bit ComboList est activé, il possède également le style de liste déroulante CBS. sinon, il a le style de _ liste déroulante CBS . _

La longueur du texte pouvant être entrée peut être limitée en plaçant un nombre compris entre 0 et 2147483646 entre accolades au début du champ de texte dans 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 limite n’est fournie dans la table, ou si 0 est spécifié, 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 faire en sorte que le champ de texte appartenant au champ d’édition soit le premier contrôle actif de la table de boîtes 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 d’édition a le focus initialement comme prévu. Cela permet de s’assurer que les lecteurs d’écran affichent les informations correctes.