Een keuzelijst met invoervak toont een lijst van strings in drop- down menu stijl. Het verstrekken van een manier om meerdere opties te tonen tijdens het opslaan van de ruimte , een keuzelijst combineert de functionaliteit van een keuzelijst en een werkgebied . De mogelijkheden van de keuzelijst met invoervak zijn ingekapseld in de CComboBox klasse van de Microsoft Foundation Class Library . Deze tutorial toont een aantal veelgebruikte functies van deze klasse . Wat je nodig hebt Microsoft Visual Studio IDE Boek over MFC , zoals " Programmeren Windows met MFC " van Jeff Prosise Toon Meer Aanwijzingen 1 lancering Microsoft Visual Studio . Genereer een dialoog - gebaseerde toepassing voor dit project door te klikken op Bestand > Nieuw > Projecten ( tabblad ) , en te kiezen voor " MFC AppWizard ( exe ) . " Type " MyCombobox " onder " Project naam . " Druk op OK , selecteer " Dialog based " en klik op Voltooien . Kopen van 2 Maak een keuzelijst en wijzig de eigenschappen. Klik op het tabblad Bronnen op de linkerkant van de werkruimte . Vouw de map Dialog en selecteer IDD_MYCOMBOBOX_DIALOG . Klik op de keuzelijst icoon uit de toolbox op de rechterkant en zet het op de dialoog . Het formaat van de drop-down uit te breiden van de keuzelijst door te klikken op de pijl en waardoor ze de rechthoek . Dan rechts-klik , selecteer Eigenschappen , klik op het tabblad Stijlen en , onder Type de optie Simple . Sluit het venster Eigenschappen Combo Box . 3 Items toevoegen aan de keuzelijst . U kunt dit op twee manieren doen . Om ze in de ontwerpfase toe te voegen , klik met de rechtermuisknop op de keuzelijst , selecteer Eigenschappen , klik op het tabblad Gegevens en voer de items . Om naar het volgende item te krijgen , drukt u op Ctrl + Enter . Om ze in runtime toevoegen , noem het CComboBox :: addstring ( ) voor het toevoegen van items aan het einde of CComboBox :: InsertString ( ) voor het invoegen items in specifieke locatie . De items zijn van het type lpszString . 4 Verander de breedte van de keuzelijst dynamisch . U kunt een item volledig , ongeacht hoe lang het is , dankzij de CComboBox :: SetDroppedWidth ( ) lid functie weer te geven . Het neemt als parameter de breedte van de string in pixels . 5 uitvoeren andere gemeenschappelijke functies . Selecteer een item in runtime door gebruik CComboBox :: SetCurSel ( ) . Het accepteert als parameter een integer index . Vind de index van het geselecteerde item met CComboBox :: GetCurSel ( ) . Ophalen van gegevens met behulp van CComboBox :: GetItemData ( ) . Bepaal de telling object via CComboBox :: GetCount ( ) . 6 Elimineer voorwerpen van een MFC keuzelijst . Als de string bekend is , kunt u gebruik maken CComboBox :: FindString ( ) om de index te bepalen en gebruik vervolgens CComboBox :: deletestring ( ) . CComboBox :: Clear ( ) verwijdert de huidige selectie eventuele terwijl CComboBox :: Cut ( ) verwijdert de huidige selectie en plaatst het op het klembord . 7 Begrijp de boodschap - map meldingen dat een combo box kan sturen . Als de keuzelijst de keuzelijst wordt gesloten , bijvoorbeeld , is ON_CBN_CLOSEUP gestuurd . Wanneer de keuzelijst verliest zijn inbreng aandacht vanwege een muisklik buiten haar grenzen , het stuurt ON_CBN_KILLFOCUS . Er is een bericht - kaart voor elke mogelijke stand - verandering die een combo box kan ondergaan .
|