Zone de liste modifiable (contrôles Windows)
Cette section contient des informations sur les éléments de programmation utilisés avec les zones de liste déroulante. Une zone de liste modifiable est un type unique de contrôle, défini par la classe COMBOBOX, qui combine une grande partie des fonctionnalités d’une zone de liste et d’un contrôle d’édition.
Vues d'ensemble
Rubrique | Contenu |
---|---|
À propos des zones de liste modifiable | Cette section décrit les différents types de zones de liste déroulante. |
Fonctionnalités de zone de liste modifiable | Ce document décrit les fonctionnalités de la zone de liste déroulante. |
Utilisation de zones de liste déroulante | Les exemples de code de cette section montrent comment effectuer des tâches associées aux zones de liste déroulante. |
Fonctions
Rubrique | Contenu |
---|---|
DlgDirListComboBox | Remplace le contenu d’une zone de liste déroulante par les noms des sous-répertoires et fichiers dans un répertoire spécifié. Vous pouvez filtrer la liste des noms en spécifiant un ensemble d’attributs de fichier. La liste des noms peut inclure des lettres de lecteur mappées. |
DlgDirSelectComboBoxEx | Récupère la sélection actuelle à partir d’une zone de liste modifiable remplie à l’aide de la fonction DlgDirListComboBox . La sélection est interprétée comme une lettre de lecteur, un fichier ou un nom de répertoire. |
GetComboBoxInfo | Récupère des informations sur la zone de liste modifiable spécifiée. |
Macros
Rubrique | Contenu |
---|---|
ComboBox_AddItemData | Ajoute des données d’élément à la liste dans une zone de liste déroulante à l’emplacement spécifié. Vous pouvez utiliser cette macro ou envoyer le message CB_ADDSTRING explicitement. |
ComboBox_AddString | Ajoute une chaîne à une liste dans une zone de liste déroulante. Si la zone de liste déroulante n’a pas le style CBS_SORT , la chaîne est ajoutée à la fin de la liste. Sinon, la chaîne est insérée dans la liste et la liste est triée. Vous pouvez utiliser cette macro ou envoyer le message CB_ADDSTRING explicitement. |
ComboBox_DeleteString | Supprime l’élément à l’emplacement spécifié dans une liste dans une zone de liste déroulante. Vous pouvez utiliser cette macro ou envoyer explicitement le message CB_DELETESTRING . |
ComboBox_Dir | Ajoute des noms à la liste affichée par une zone de liste déroulante. La macro ajoute les noms des répertoires et des fichiers qui correspondent à une chaîne et un ensemble d’attributs de fichier spécifiés. Il peut également ajouter des lettres de lecteur mappées à la liste dans une zone de liste déroulante. Vous pouvez utiliser cette macro ou envoyer explicitement le message CB_DIR . |
ComboBox_Enable | Active ou désactive un contrôle de zone de liste modifiable. |
ComboBox_FindItemData | Recherche le premier élément dans une liste de zone de liste déroulante qui contient les données d’élément spécifiées. Vous pouvez utiliser cette macro ou envoyer explicitement le message CB_FINDSTRING . |
ComboBox_FindString | Recherche la première chaîne dans une liste de zones de liste déroulante qui commence par la chaîne spécifiée. Vous pouvez utiliser cette macro ou envoyer explicitement le message CB_FINDSTRING . |
ComboBox_FindStringExact | Recherche la première chaîne dans une liste de zones de liste déroulante qui correspond exactement à la chaîne spécifiée, sauf que la recherche ne respecte pas la casse. Vous pouvez utiliser cette macro ou envoyer le message CB_FINDSTRINGEXACT explicitement. |
ComboBox_GetCount | Obtient le nombre d’éléments dans la zone de liste d’une zone de liste modifiable. Vous pouvez utiliser cette macro ou envoyer le message CB_GETCOUNT explicitement. |
ComboBox_GetCueBannerText | Obtient le texte de bannière d’indicateur affiché dans le contrôle d’édition d’une zone de liste déroulante. Utilisez cette macro ou envoyez le message CB_GETCUEBANNER explicitement. |
ComboBox_GetCurSel | Obtient l’index de l’élément actuellement sélectionné dans une zone de liste déroulante. Vous pouvez utiliser cette macro ou envoyer le message CB_GETCURSEL explicitement. |
ComboBox_GetDroppedControlRect | Récupère les coordonnées d’écran d’une zone de liste déroulante dans son état supprimé. Vous pouvez utiliser cette macro ou envoyer le message CB_GETDROPPEDCONTROLRECT explicitement. |
ComboBox_GetDroppedState | Vérifie si la liste déroulante d’un contrôle de zone de liste déroulante est visible. Vous pouvez utiliser cette macro ou envoyer le message CB_GETDROPPEDSTATE explicitement. |
ComboBox_GetExtendedUI | Détermine si une zone de liste déroulante utilise l’interface utilisateur par défaut ou l’interface utilisateur étendue. Vous pouvez utiliser cette macro ou envoyer le message CB_GETEXTENDEDUI explicitement. |
ComboBox_GetItemData | Obtient la valeur définie par l’application associée à l’élément de liste spécifié dans une zone de liste modifiable. Vous pouvez utiliser cette macro ou envoyer le message CB_GETITEMDATA explicitement. |
ComboBox_GetItemHeight | Récupère la hauteur des éléments de liste dans une zone de liste modifiable. Vous pouvez utiliser cette macro ou envoyer le message CB_GETITEMHEIGHT explicitement. |
ComboBox_GetLBText | Obtient une chaîne d’une liste dans une zone de liste modifiable. Vous pouvez utiliser cette macro ou envoyer le message CB_GETLBTEXT explicitement. |
ComboBox_GetLBTextLen | Obtient la longueur d’une chaîne dans la liste dans une zone de liste déroulante. Vous pouvez utiliser cette macro ou envoyer le message CB_GETLBTEXTLEN explicitement. |
ComboBox_GetMinVisible | Obtient le nombre minimal d’éléments visibles dans la liste déroulante d’une zone de liste déroulante. |
ComboBox_GetText | Récupère le texte d’un contrôle de zone de liste modifiable. |
ComboBox_GetTextLength | Obtient le nombre de caractères dans le texte d’une zone de liste déroulante. |
ComboBox_InsertItemData | Insère des données d’élément dans une liste dans une zone de liste déroulante à l’emplacement spécifié. Vous pouvez utiliser cette macro ou envoyer le message CB_INSERTSTRING explicitement. |
ComboBox_InsertString | Ajoute une chaîne à une liste dans une zone de liste déroulante à l’emplacement spécifié. Vous pouvez utiliser cette macro ou envoyer le message CB_INSERTSTRING explicitement. |
ComboBox_LimitText | Limite la longueur du texte que l’utilisateur peut taper dans le contrôle d’édition d’une zone de liste déroulante. Vous pouvez utiliser cette macro ou envoyer le message CB_LIMITTEXT explicitement. |
ComboBox_ResetContent | Supprime tous les éléments de la zone de liste et le contrôle de modification d’une zone de liste modifiable. Vous pouvez utiliser cette macro ou envoyer le message CB_RESETCONTENT explicitement. |
ComboBox_SelectItemData | Recherche dans une liste dans une zone de liste modifiable un élément qui contient les données d’élément spécifiées. Si un élément correspondant est trouvé, l’élément est sélectionné. Vous pouvez utiliser cette macro ou envoyer le message CB_SELECTSTRING explicitement. |
ComboBox_SelectString | Recherche dans une liste dans une zone de liste modifiable un élément qui commence par les caractères d’une chaîne spécifiée. Si un élément correspondant est trouvé, l’élément est sélectionné. Vous pouvez utiliser cette macro ou envoyer le message CB_SELECTSTRING explicitement. |
ComboBox_SetCueBannerText | Définit le texte de bannière de repère affiché pour le contrôle d’édition d’une zone de liste déroulante. |
ComboBox_SetCurSel | Définit l’élément actuellement sélectionné dans une zone de liste déroulante. Vous pouvez utiliser cette macro ou envoyer le message CB_SETCURSEL explicitement. |
ComboBox_SetExtendedUI | Sélectionne l’interface utilisateur par défaut ou l’interface utilisateur étendue pour une zone de liste déroulante qui a le style CBS_DROPDOWN ou CBS_DROPDOWNLIST . Vous pouvez utiliser cette macro ou envoyer le message CB_SETEXTENDEDUI explicitement. |
ComboBox_SetItemData | Définit la valeur définie par l’application associée à l’élément de liste spécifié dans une zone de liste modifiable. Vous pouvez utiliser cette macro ou envoyer le message CB_SETITEMDATA explicitement. |
ComboBox_SetItemHeight | Définit la hauteur des éléments de liste ou le champ de sélection dans une zone de liste déroulante. Vous pouvez utiliser cette macro ou envoyer le message CB_SETITEMHEIGHT explicitement. |
ComboBox_SetMinVisible | Définit le nombre minimal d’éléments visibles dans la liste déroulante d’une zone de liste déroulante. |
ComboBox_SetText | Définit le texte d’une zone de liste modifiable. |
ComboBox_ShowDropdown | Affiche ou masque la liste dans une zone de liste déroulante. Vous pouvez utiliser cette macro ou envoyer le message CB_SHOWDROPDOWN explicitement. |
Messages
Rubrique | Contenu |
---|---|
CB_ADDSTRING | Ajoute une chaîne à la zone de liste d’une zone de liste modifiable. Si la zone de liste déroulante n’a pas le style CBS_SORT , la chaîne est ajoutée à la fin de la liste. Sinon, la chaîne est insérée dans la liste et la liste est triée. |
CB_DELETESTRING | Supprime une chaîne dans la zone de liste d’une zone de liste modifiable. |
CB_DIR | Ajoute des noms à la liste affichée par la zone de liste déroulante. Le message ajoute les noms des répertoires et des fichiers qui correspondent à une chaîne et à un ensemble d’attributs de fichier spécifiés.
CB_DIR pouvez également ajouter des lettres de lecteur mappées à la liste. |
CB_FINDSTRING | Recherche dans la zone de liste d’une zone de liste modifiable un élément commençant par les caractères d’une chaîne spécifiée. |
CB_FINDSTRINGEXACT | Recherche la première chaîne de zone de liste dans une zone de liste modifiable qui correspond à la chaîne spécifiée dans le paramètre lParam . |
CB_GETCOMBOBOXINFO | Obtient des informations sur la zone de liste déroulante spécifiée. |
CB_GETCOUNT | Obtient le nombre d’éléments dans la zone de liste d’une zone de liste modifiable. |
CB_GETCUEBANNER | Obtient le texte de bannière de repère affiché dans le contrôle d’édition d’une zone de liste déroulante. Envoyez ce message explicitement ou à l’aide de la macro ComboBox_GetCueBannerText . |
CB_GETCURSEL | Une application envoie un message CB_GETCURSEL pour récupérer l’index de l’élément actuellement sélectionné, le cas échéant, dans la zone de liste d’une zone de liste modifiable. |
CB_GETDROPPEDCONTROLRECT | Une application envoie un message CB_GETDROPPEDCONTROLRECT pour récupérer les coordonnées d’écran d’une zone de liste déroulante dans son état supprimé. |
CB_GETDROPPEDSTATE | Détermine si la zone de liste d’une zone de liste modifiable est supprimée. |
CB_GETDROPPEDWIDTH | Obtient la largeur minimale autorisée, en pixels, de la zone de liste d’une zone de liste modifiable avec le style CBS_DROPDOWN ou CBS_DROPDOWNLIST . |
CB_GETEDITSEL | Obtient les positions de caractères de début et de fin de la sélection actuelle dans le contrôle d’édition d’une zone de liste déroulante. |
CB_GETEXTENDEDUI | Détermine si une zone de liste déroulante a l’interface utilisateur par défaut ou l’interface utilisateur étendue. |
CB_GETHORIZONTALEXTENT | Obtient la largeur, en pixels, que la zone de liste peut faire défiler horizontalement (largeur de défilement). Cela s’applique uniquement si la zone de liste a une barre de défilement horizontale. |
CB_GETITEMDATA | Une application envoie un message CB_GETITEMDATA à une zone de liste déroulante pour récupérer la valeur fournie par l’application associée à l’élément spécifié dans la zone de liste déroulante. |
CB_GETITEMHEIGHT | Détermine la hauteur des éléments de liste ou le champ de sélection dans une zone de liste modifiable. |
CB_GETLBTEXT | Obtient une chaîne à partir de la liste d’une zone de liste modifiable. |
CB_GETLBTEXTLEN | Obtient la longueur, en caractères, d’une chaîne dans la liste d’une zone de liste modifiable. |
CB_GETLOCALE | Obtient les paramètres régionaux actuels de la zone de liste déroulante. Les paramètres régionaux sont utilisés pour déterminer l’ordre de tri correct du texte affiché pour les zones de liste déroulante avec le style CBS_SORT et le texte ajoutés à l’aide du message CB_ADDSTRING . |
CB_GETMINVISIBLE | Obtient le nombre minimal d’éléments visibles dans la liste déroulante d’une zone de liste déroulante. |
CB_GETTOPINDEX | Une application envoie le message CB_GETTOPINDEX pour récupérer l’index de base zéro du premier élément visible dans la partie zone de liste d’une zone de liste modifiable. Initialement, l’élément avec l’index 0 se trouve en haut de la zone de liste, mais si le contenu de la zone de liste a été fait défiler, un autre élément peut se trouver en haut. |
CB_INITSTORAGE | Une application envoie le message CB_INITSTORAGE avant d’ajouter un grand nombre d’éléments à la partie zone de liste d’une zone de liste modifiable. Ce message alloue de la mémoire pour le stockage des éléments de zone de liste. |
CB_INSERTSTRING | Insère une chaîne ou des données d’élément dans la liste d’une zone de liste modifiable. Contrairement au message CB_ADDSTRING , le message CB_INSERTSTRING n’entraîne pas le tri d’une liste avec le style CBS_SORT . |
CB_LIMITTEXT | Limite la longueur du texte que l’utilisateur peut taper dans le contrôle d’édition d’une zone de liste déroulante. |
CB_RESETCONTENT | Supprime tous les éléments de la zone de liste et le contrôle de modification d’une zone de liste modifiable. |
CB_SELECTSTRING | Recherche dans la liste d’une zone de liste déroulante un élément qui commence par les caractères d’une chaîne spécifiée. Si un élément correspondant est trouvé, il est sélectionné et copié dans le contrôle d’édition. |
CB_SETCUEBANNER | Définit le texte de bannière de signe qui s’affiche pour le contrôle d’édition d’une zone de liste déroulante. |
CB_SETCURSEL | Une application envoie un message CB_SETCURSEL pour sélectionner une chaîne dans la liste d’une zone de liste déroulante. Si nécessaire, la liste fait défiler la chaîne dans l’affichage. Le texte du contrôle d’édition de la zone de liste modifiable est modifié pour refléter la nouvelle sélection, et toute sélection précédente dans la liste est supprimée. |
CB_SETDROPPEDWIDTH | Une application envoie le message CB_SETDROPPEDWIDTH pour définir la largeur maximale autorisée, en pixels, de la zone de liste d’une zone de liste modifiable avec le style CBS_DROPDOWN ou CBS_DROPDOWNLIST . |
CB_SETEDITSEL | Une application envoie un message CB_SETEDITSEL pour sélectionner des caractères dans le contrôle d’édition d’une zone de liste déroulante. |
CB_SETEXTENDEDUI | Une application envoie un message CB_SETEXTENDEDUI pour sélectionner l’interface utilisateur par défaut ou l’interface utilisateur étendue d’une zone de liste déroulante qui a le style CBS_DROPDOWN ou CBS_DROPDOWNLIST . |
CB_SETHORIZONTALEXTENT | Une application envoie le message CB_SETHORIZONTALEXTENT pour définir la largeur, en pixels, par laquelle une zone de liste peut être défilé horizontalement (largeur de défilement). Si la largeur de la zone de liste est inférieure à cette valeur, la barre de défilement horizontale fait défiler horizontalement les éléments de la zone de liste. Si la largeur de la zone de liste est égale ou supérieure à cette valeur, la barre de défilement horizontale est masquée ou, si la zone de liste déroulante a le style CBS_DISABLENOSCROLL , désactivée. |
CB_SETITEMDATA | Une application envoie un message CB_SETITEMDATA pour définir la valeur associée à l’élément spécifié dans une zone de liste déroulante. |
CB_SETITEMHEIGHT | Une application envoie un message CB_SETITEMHEIGHT pour définir la hauteur des éléments de liste ou du champ de sélection dans une zone de liste déroulante. |
CB_SETLOCALE | Une application envoie un message CB_SETLOCALE pour définir les paramètres régionaux actuels de la zone de liste déroulante. Si la zone de liste déroulante a le style CBS_SORT et que des chaînes sont ajoutées à l’aide de CB_ADDSTRING, les paramètres régionaux d’une zone de liste modifiable affectent la façon dont les éléments de liste sont triés. |
CB_SETMINVISIBLE | Une application envoie un message CB_SETMINVISIBLE pour définir le nombre minimal d’éléments visibles dans la liste déroulante d’une zone de liste déroulante. |
CB_SETTOPINDEX | Une application envoie le message CB_SETTOPINDEX pour s’assurer qu’un élément particulier est visible dans la zone de liste d’une zone de liste déroulante. Le système fait défiler le contenu de la zone de liste afin que l’élément spécifié apparaisse en haut de la zone de liste ou que la plage de défilement maximale ait été atteinte. |
CB_SHOWDROPDOWN | Une application envoie un message CB_SHOWDROPDOWN pour afficher ou masquer la zone de liste d’une zone de liste déroulante qui a le style CBS_DROPDOWN ou CBS_DROPDOWNLIST . |
Notifications
Rubrique | Contenu |
---|---|
CBN_CLOSEUP | Le code de notification CBN_CLOSEUP est envoyé lorsque la zone de liste d’une zone de liste modifiable a été fermée. La fenêtre parente de la zone de liste déroulante reçoit ce code de notification via le message WM_COMMAND . |
CBN_DBLCLK | Le code de notification CBN_DBLCLK est envoyé lorsque l’utilisateur double-clique sur une chaîne dans la zone de liste d’une zone de liste déroulante. La fenêtre parente de la zone de liste déroulante reçoit ce code de notification via le message WM_COMMAND . |
CBN_DROPDOWN | Le code de notification CBN_DROPDOWN est envoyé lorsque la zone de liste d’une zone de liste modifiable est sur le point d’être rendue visible. La fenêtre parente de la zone de liste déroulante reçoit ce code de notification via le message WM_COMMAND . |
CBN_EDITCHANGE | Le code de notification CBN_EDITCHANGE est envoyé après que l’utilisateur a effectué une action qui a peut-être modifié le texte dans la partie contrôle d’édition d’une zone de liste déroulante. Contrairement au code de notification CBN_EDITUPDATE , ce code de notification est envoyé après que le système a mis à jour l’écran. La fenêtre parente de la zone de liste déroulante reçoit ce code de notification via le message WM_COMMAND . |
CBN_EDITUPDATE | Le code de notification CBN_EDITUPDATE est envoyé lorsque la partie de contrôle d’édition d’une zone de liste déroulante est sur le point d’afficher du texte modifié. Ce code de notification est envoyé après que le contrôle a mis en forme le texte, mais avant d’afficher le texte. La fenêtre parente de la zone de liste déroulante reçoit ce code de notification via le message WM_COMMAND . |
CBN_ERRSPACE | Le code de notification CBN_ERRSPACE est envoyé lorsqu’une zone de liste modifiable ne peut pas allouer suffisamment de mémoire pour répondre à une demande spécifique. La fenêtre parente de la zone de liste déroulante reçoit ce code de notification via le message WM_COMMAND . |
CBN_KILLFOCUS | Le code de notification CBN_KILLFOCUS est envoyé lorsqu’une zone de liste déroulante perd le focus clavier. La fenêtre parente de la zone de liste déroulante reçoit ce code de notification via le message WM_COMMAND . |
CBN_SELCHANGE | Le code de notification CBN_SELCHANGE est envoyé lorsque l’utilisateur modifie la sélection actuelle dans la zone de liste d’une zone de liste déroulante. L’utilisateur peut modifier la sélection en cliquant dans la zone de liste ou en utilisant les touches de direction. La fenêtre parente de la zone de liste déroulante reçoit cette notification sous la forme d’un message WM_COMMAND avec CBN_SELCHANGE dans le mot d’ordre supérieur du paramètre wParam . |
CBN_SELENDCANCEL | Le code de notification CBN_SELENDCANCEL est envoyé lorsque l’utilisateur sélectionne un élément, puis sélectionne un autre contrôle ou ferme la boîte de dialogue. Elle indique que la sélection initiale de l’utilisateur doit être ignorée. La fenêtre parente de la zone de liste déroulante reçoit ce code de notification via le message WM_COMMAND . |
CBN_SELENDOK | Le code de notification CBN_SELENDOK est envoyé lorsque l’utilisateur sélectionne un élément de liste, ou sélectionne un élément, puis ferme la liste. Elle indique que la sélection de l’utilisateur doit être traitée. La fenêtre parente de la zone de liste déroulante reçoit ce code de notification via le message WM_COMMAND . |
CBN_SETFOCUS | Le code de notification CBN_SETFOCUS est envoyé lorsqu’une zone de liste modifiable reçoit le focus clavier. La fenêtre parente de la zone de liste déroulante reçoit ce code de notification via le message WM_COMMAND . |
WM_COMPAREITEM | Le système envoie le message WM_COMPAREITEM pour déterminer la position relative d’un nouvel élément dans la liste triée d’une zone de liste déroulante ou d’une zone de liste dessinée par le propriétaire. Chaque fois que l’application ajoute un nouvel élément, le système envoie ce message au propriétaire d’une zone de liste déroulante ou d’une zone de liste créée avec le style CBS_SORT ou LBS_SORT . |
WM_DRAWITEM | Le message WM_DRAWITEM est envoyé à la fenêtre parente d’un bouton, d’une zone de liste déroulante, d’une zone de liste ou d’un menu dessiné par le propriétaire lorsqu’un aspect visuel du bouton, de la zone de liste déroulante, de la zone de liste ou du menu a changé. |
WM_MEASUREITEM | Le message WM_MEASUREITEM est envoyé à la fenêtre propriétaire d’une zone de liste déroulante, d’une zone de liste, d’un contrôle d’affichage de liste ou d’un élément de menu lors de la création du contrôle ou du menu. |
Structures
Rubrique | Contenu |
---|---|
COMBOBOXINFO | Contient des informations status zone de liste déroulante. |
COMPAREITEMSTRUCT | Fournit les identificateurs et les données fournies par l’application pour deux éléments dans une zone de liste ou une zone de liste déroulante triée et dessinée par le propriétaire. |
DRAWITEMSTRUCT | Fournit les informations nécessaires à la fenêtre propriétaire pour déterminer comment peindre un contrôle ou un élément de menu dessiné par le propriétaire. La fenêtre propriétaire du contrôle ou de l’élément de menu dessiné par le propriétaire reçoit un pointeur vers cette structure en tant que paramètre lParam du message WM_DRAWITEM . |
MEASUREITEMSTRUCT | Informe le système des dimensions d’un contrôle ou d’un élément de menu dessiné par le propriétaire. Cela permet au système de traiter correctement l’interaction de l’utilisateur avec le contrôle. |
Constantes
Rubrique | Contenu |
---|---|
Styles de zone de liste modifiable | Pour créer une zone de liste modifiable à l’aide de la fonction CreateWindow ou CreateWindowEx , spécifiez la classe COMBOBOX, les constantes de style de fenêtre appropriées et une combinaison des styles de zone de liste modifiable suivants. |