Les partenaires publicitaires:

Comment utiliser une zone de liste déroulante dans mfc

Un contrôle de la zone de liste déroulante affiche une liste de chaînes de caractères dans le style du menu déroulant. Fournir un moyen de montrer de multiples options tout en économisant de l'espace, une zone de liste déroulante combine la fonctionnalité d'une zone de liste et une boîte d'édition. Les capacités de contrôle de zone de liste déroulante sont encapsulés dans la classe CComboBox de la bibliothèque Microsoft Foundation Class. Ce tutoriel montre quelques fonctionnalités couramment utilisés de cette classe.

Choses que vous devez

  • Microsoft Visual Studio IDE
  • Réservation sur MFC, comme "Programmation Windows avec MFC" par Jeff Prosise

Instructions

  1. Lancez Microsoft Visual Studio. Générer une application en fonction de dialogue pour ce projet en cliquant sur Fichier gt; Nouveau gt; Projets (onglet), et la sélection "MFC AppWizard (exe)." Type "MyComboBox" sous "Nom du projet." Appuyez sur OK, sélectionnez "En fonction de dialogue" et cliquez sur Terminer.

  2. Créer une zone de liste déroulante et de modifier ses propriétés. Cliquez sur l'onglet Ressources sur le côté gauche de l'espace de travail. Développez le dossier boîte de dialogue et sélectionnez IDD_MYCOMBOBOX_DIALOG. Cliquez sur l'icône de zone de liste déroulante de la boîte à outils sur le côté droit et le mettre sur la boîte de dialogue. Redimensionner le menu déroulant étendre de la boîte de combo en cliquant sur la flèche et glisser vers le bas du rectangle. Puis à droite; cliquez sur, sélectionnez Propriétés, cliquez sur l'onglet Styles et, sous Type, sélectionnez Simple. Fermez la boîte Propriétés Combo.



  3. Ajouter des éléments à la zone de liste déroulante. Vous pouvez le faire de deux façons. Pour les ajouter au moment du design, droit, cliquez sur la liste déroulante, sélectionnez Propriétés, cliquez sur l'onglet Données et entrez les articles. Pour accéder à l'élément suivant, appuyez sur Ctrl + Entrée. Pour les ajouter à l'exécution, appelez la CComboBox :: AddString () pour ajouter des éléments à la fin ou CComboBox :: InsertString () pour insérer des éléments dans un emplacement spécifique. Les articles sont de type lpszString.




  4. Changer la largeur de la zone de liste déroulante dynamiquement. Vous pouvez afficher un objet pleinement, peu importe combien de temps il est, grâce à la fonction de membre CComboBox :: SetDroppedWidth (). Il prend en paramètre la largeur de la chaîne en pixels.

  5. Effectuer d'autres fonctions communes. Sélectionnez un élément à l'exécution en utilisant CComboBox :: SetCurSel (). Il accepte en paramètre un index entier. Trouver l'indice de l'élément sélectionné avec CComboBox :: GetCurSel (). Récupérer des données en utilisant CComboBox :: GetItemData (). Déterminer l'élément compter travers CComboBox :: GetCount ().

  6. Éliminer les articles à partir d'une boîte de MFC de combo. Si la chaîne est connu, vous pouvez utiliser CComboBox :: FindString () pour déterminer l'indice et ensuite utiliser CComboBox :: deletestring (). CComboBox :: Clear () supprime la sélection actuelle le cas échéant, tout en CComboBox :: Cut () supprime la sélection actuelle et la place sur le presse-papiers.

  7. Comprendre les messages carte messages de notification qu'une zone de liste déroulante peut envoyer. Lorsque la zone de liste de la liste déroulante est fermée, par exemple, ON_CBN_CLOSEUP est envoyé. Lorsque la boîte combo perd son focus d'entrée à cause d'un clic de souris en dehors de ses frontières, il envoie ON_CBN_KILLFOCUS. Il ya un message-carte pour chaque changement d'état-possible qu'une zone de liste déroulante peut subir.

Conseils & Avertissements

  • La seule fois que vous avez à vous soucier de la destruction d'une zone de liste déroulante est si vous créez sur le tas. Si vous appelez le "nouveau" opérateur, vous devez appeler "effacer" au nettoyage.
» » » » Comment utiliser une zone de liste déroulante dans mfc