Kombinationsruta (Windows-kontroller)
Det här avsnittet innehåller information om de programmeringselement som används med kombinationsrutor. En kombinationsruta är en unik typ av kontroll, definierad av COMBOBOX-klassen, som kombinerar mycket av funktionerna i en listruta och en redigeringskontroll.
Översikter
Ämne | Innehåll |
---|---|
om kombinationsrutor | I det här avsnittet beskrivs olika typer av kombinationsrutor. |
Kombinationsrutefunktioner | I det här dokumentet beskrivs funktionerna i kombinationsrutan. |
använda kombinationsrutor | Kodexemplen i det här avsnittet visar hur du utför uppgifter som är associerade med kombinationsrutor. |
Funktioner
Ämne | Innehåll |
---|---|
DlgDirListComboBox | Ersätter innehållet i en kombinationsruta med namnen på underkatalogerna och filerna i en angiven katalog. Du kan filtrera listan med namn genom att ange en uppsättning filattribut. Listan med namn kan innehålla mappade enhetsbeteckningar. |
DlgDirSelectComboBoxEx | Hämtar den aktuella markeringen från en kombinationsruta som fylls med hjälp av funktionen DlgDirListComboBox. Markeringen tolkas som en enhetsbeteckning, en fil eller ett katalognamn. |
GetComboBoxInfo | Hämtar information om den angivna kombinationsrutan. |
Makron
Ämne | Innehåll |
---|---|
ComboBox_AddItemData | Lägger till objektdata i listan i en kombinationsruta på den angivna platsen. Du kan använda det här makrot eller uttryckligen skicka CB_ADDSTRING meddelande. |
ComboBox_AddString | Lägger till en sträng i en lista i en kombinationsruta. Om kombinationsrutan inte har CBS_SORT stil läggs strängen till i slutet av listan. Annars infogas strängen i listan och listan sorteras. Du kan använda det här makrot eller uttryckligen skicka CB_ADDSTRING meddelande. |
ComboBox_DeleteString | Tar bort objektet på den angivna platsen i en lista i en kombinationsruta. Du kan använda det här makrot eller skicka CB_DELETESTRING-meddelandet explicit. |
ComboBox_Dir | Lägger till namn i listan som visas av en kombinationsruta. Makrot lägger till namnen på kataloger och filer som matchar en angiven sträng och uppsättning filattribut. Den kan också lägga till mappade enhetsbeteckningar i listan i en kombinationsruta. Du kan använda det här makrot eller skicka meddelandet CB_DIR explicit. |
ComboBox_Enable | Aktiverar eller inaktiverar en kombinationsrutekontroll. |
ComboBox_FindItemData | Söker efter det första objektet i en kombinationsruta med angivna objektdata. Du kan använda det här makrot eller uttryckligen skicka meddelandet CB_FINDSTRING. |
ComboBox_FindString | Hittar den första strängen i en kombinationsruta som börjar med den angivna strängen. Du kan använda det här makrot eller uttryckligen skicka meddelandet CB_FINDSTRING. |
ComboBox_FindStringExact | Hittar den första strängen i en kombinationsruta som exakt matchar den angivna strängen, förutom att sökningen inte är skiftlägeskänslig. Du kan använda det här makrot eller skicka meddelandet CB_FINDSTRINGEXACT explicit. |
ComboBox_GetCount | Hämtar antalet objekt i listrutan i en kombinationsruta. Du kan använda det här makrot eller uttryckligen skicka CB_GETCOUNT meddelande. |
ComboBox_GetCueBannerText | Hämtar den text som visas i redigeringskontrollen för en kombinationsruta. Använd det här makrot eller skicka CB_GETCUEBANNER-meddelandet explicit. |
ComboBox_GetCurSel | Hämtar indexet för det markerade objektet i en kombinationsruta. Du kan använda det här makrot eller skicka meddelandet CB_GETCURSEL explicit. |
ComboBox_GetDroppedControlRect | Hämtar skärmkoordinaterna för en kombinationsruta i nedrullningsat tillstånd. Du kan använda det här makrot eller skicka CB_GETDROPPEDCONTROLRECT-meddelandet explicit. |
ComboBox_GetDroppedState | Kontrollerar om listrutan i en kombinationsruta är synlig. Du kan använda det här makrot eller uttryckligen skicka CB_GETDROPPEDSTATE meddelandet. |
ComboBox_GetExtendedUI | Kontrollerar om en kombinationsruta använder standardanvändargränssnittet (UI) eller det utökade användargränssnittet. Du kan använda det här makrot eller skicka meddelandet CB_GETEXTENDEDUI explicit. |
ComboBox_GetItemData | Hämtar det programdefinierade värdet som är associerat med det angivna listobjektet i en kombinationsruta. Du kan använda det här makrot eller uttryckligen skicka CB_GETITEMDATA meddelande. |
ComboBox_GetItemHeight | Hämtar höjden på listobjekt i en kombinationsruta. Du kan använda det här makrot eller skicka CB_GETITEMHEIGHT-meddelandet explicit. |
ComboBox_GetLBText | Hämtar en sträng från en lista i en kombinationsruta. Du kan använda det här makrot eller skicka CB_GETLBTEXT-meddelandet explicit. |
ComboBox_GetLBTextLen | Hämtar längden på en sträng i listan i en kombinationsruta. Du kan använda det här makrot eller skicka meddelandet CB_GETLBTEXTLEN explicit. |
ComboBox_GetMinVisible | Hämtar det minsta antalet synliga objekt i listrutan i en kombinationsruta. |
ComboBox_GetText | Hämtar texten från en kombinationsrutekontroll. |
ComboBox_GetTextLength | Hämtar antalet tecken i texten i en kombinationsruta. |
ComboBox_InsertItemData | Infogar objektdata i en lista i en kombinationsruta på den angivna platsen. Du kan använda det här makrot eller uttryckligen skicka CB_INSERTSTRING meddelandet. |
ComboBox_InsertString | Lägger till en sträng i en lista i en kombinationsruta på den angivna platsen. Du kan använda det här makrot eller uttryckligen skicka CB_INSERTSTRING meddelandet. |
ComboBox_LimitText | Begränsar längden på texten som användaren kan skriva i redigeringskontrollen för en kombinationsruta. Du kan använda det här makrot eller skicka CB_LIMITTEXT-meddelandet explicit. |
ComboBox_ResetContent | Tar bort alla objekt från listrutan och redigerar kontrollen för en kombinationsruta. Du kan använda det här makrot eller skicka CB_RESETCONTENT-meddelandet explicit. |
ComboBox_SelectItemData | Söker i en lista i en kombinationsruta efter ett objekt som har angivna objektdata. Om ett matchande objekt hittas markeras objektet. Du kan använda det här makrot eller skicka CB_SELECTSTRING-meddelandet explicit. |
ComboBox_SelectString | Söker i en lista i en kombinationsruta efter ett objekt som börjar med tecknen i en angiven sträng. Om ett matchande objekt hittas markeras objektet. Du kan använda det här makrot eller skicka CB_SELECTSTRING-meddelandet explicit. |
ComboBox_SetCueBannerText | Anger den banderollstext som visas för redigeringskontrollen för en kombinationsruta. |
ComboBox_SetCurSel | Anger det markerade objektet i en kombinationsruta. Du kan använda det här makrot eller skicka CB_SETCURSEL-meddelandet explicit. |
ComboBox_SetExtendedUI | Väljer antingen standardanvändargränssnittet (användargränssnittet) eller det utökade användargränssnittet för en kombinationsruta som har CBS_DROPDOWN eller CBS_DROPDOWNLIST formatmall. Du kan använda det här makrot eller skicka meddelandet CB_SETEXTENDEDUI explicit. |
ComboBox_SetItemData | Anger det programdefinierade värdet som är associerat med det angivna listobjektet i en kombinationsruta. Du kan använda det här makrot eller skicka CB_SETITEMDATA-meddelandet explicit. |
ComboBox_SetItemHeight | Anger höjden på listobjekt eller markeringsfältet i en kombinationsruta. Du kan använda det här makrot eller skicka CB_SETITEMHEIGHT-meddelandet explicit. |
ComboBox_SetMinVisible | Anger det minsta antalet synliga objekt i listrutan i en kombinationsruta. |
ComboBox_SetText | Anger texten i en kombinationsruta. |
ComboBox_ShowDropdown | Visar eller döljer listan i en kombinationsruta. Du kan använda det här makrot eller skicka meddelandet CB_SHOWDROPDOWN explicit. |
Meddelanden
Ämne | Innehåll |
---|---|
CB_ADDSTRING | Lägger till en sträng i listrutan i en kombinationsruta. Om kombinationsrutan inte har CBS_SORT stil läggs strängen till i slutet av listan. Annars infogas strängen i listan och listan sorteras. |
CB_DELETESTRING | Tar bort en sträng i listrutan i en kombinationsruta. |
CB_DIR | Lägger till namn i listan som visas i kombinationsrutan. Meddelandet lägger till namnen på kataloger och filer som matchar en angiven sträng och uppsättning filattribut.
CB_DIR kan också lägga till mappade enhetsbeteckningar i listan. |
CB_FINDSTRING | Söker i listrutan i en kombinationsruta efter ett objekt som börjar med tecknen i en angiven sträng. |
CB_FINDSTRINGEXACT | Hittar den första listrutesträngen i en kombinationsruta som matchar strängen som anges i parametern lParam. |
CB_GETCOMBOBOXINFO | Hämtar information om den angivna kombinationsrutan. |
CB_GETCOUNT | Hämtar antalet objekt i listrutan i en kombinationsruta. |
CB_GETCUEBANNER | Hämtar den text som visas i redigeringskontrollen för en kombinationsruta. Skicka det här meddelandet explicit eller med hjälp av makrot ComboBox_GetCueBannerText. |
CB_GETCURSEL | Ett program skickar ett CB_GETCURSEL meddelande för att hämta indexet för det markerade objektet, om det finns något, i listrutan i en kombinationsruta. |
CB_GETDROPPEDCONTROLRECT | Ett program skickar ett CB_GETDROPPEDCONTROLRECT meddelande för att hämta skärmkoordinaterna för en kombinationsruta i nedrullningsläge. |
CB_GETDROPPEDSTATE | Avgör om listrutan i en kombinationsruta är nedsläppt. |
CB_GETDROPPEDWIDTH | Hämtar den minsta tillåtna bredden i bildpunkter för listrutan i en kombinationsruta med CBS_DROPDOWN eller CBS_DROPDOWNLIST formatmall. |
CB_GETEDITSEL | Hämtar start- och slutteckenpositionerna för den aktuella markeringen i redigeringskontrollen för en kombinationsruta. |
CB_GETEXTENDEDUI | Avgör om en kombinationsruta har standardanvändargränssnittet eller det utökade användargränssnittet. |
CB_GETHORIZONTALEXTENT | Hämtar bredden i bildpunkter som listrutan kan rullas vågrätt (den rullningsbara bredden). Detta gäller endast om listrutan har en vågrät rullningslist. |
CB_GETITEMDATA | Ett program skickar ett CB_GETITEMDATA meddelande till en kombinationsruta för att hämta det angivna värdet för det angivna objektet i kombinationsrutan. |
CB_GETITEMHEIGHT | Avgör höjden på listobjekt eller markeringsfältet i en kombinationsruta. |
CB_GETLBTEXT | Hämtar en sträng från listan över en kombinationsruta. |
CB_GETLBTEXTLEN | Hämtar längden, i tecken, på en sträng i listan över en kombinationsruta. |
CB_GETLOCALE | Hämtar den aktuella språkvarianten för kombinationsrutan. Språkvarianten används för att fastställa rätt sorteringsordning för visad text för kombinationsrutor med CBS_SORT formatmall och text som läggs till med hjälp av CB_ADDSTRING meddelandet. |
CB_GETMINVISIBLE | Hämtar det minsta antalet synliga objekt i listrutan i en kombinationsruta. |
CB_GETTOPINDEX | Ett program skickar meddelandet CB_GETTOPINDEX för att hämta det nollbaserade indexet för det första synliga objektet i listrutan i en kombinationsruta. Till en början är objektet med index 0 överst i listrutan, men om listrutans innehåll har rullats kan ett annat objekt vara överst. |
CB_INITSTORAGE | Ett program skickar meddelandet CB_INITSTORAGE innan ett stort antal objekt läggs till i listrutans del av en kombinationsruta. Det här meddelandet allokerar minne för lagring av listruteobjekt. |
CB_INSERTSTRING | Infogar en sträng eller objektdata i listan över en kombinationsruta. Till skillnad från det CB_ADDSTRING meddelandet leder CB_INSERTSTRING meddelandet inte till att en lista med CBS_SORT formatmall sorteras. |
CB_LIMITTEXT | Begränsar längden på texten som användaren kan skriva i redigeringskontrollen för en kombinationsruta. |
CB_RESETCONTENT | Tar bort alla objekt från listrutan och redigerar kontrollen för en kombinationsruta. |
CB_SELECTSTRING | Söker i listan över en kombinationsruta efter ett objekt som börjar med tecknen i en angiven sträng. Om ett matchande objekt hittas markeras det och kopieras till redigeringskontrollen. |
CB_SETCUEBANNER | Anger den banderollstext som visas för redigeringskontrollen för en kombinationsruta. |
CB_SETCURSEL | Ett program skickar ett CB_SETCURSEL meddelande för att välja en sträng i listan över en kombinationsruta. Om det behövs rullar listan strängen i vyn. Texten i redigeringskontrollen för kombinationsrutan ändras för att återspegla den nya markeringen och eventuella tidigare val i listan tas bort. |
CB_SETDROPPEDWIDTH | Ett program skickar meddelandet CB_SETDROPPEDWIDTH för att ange den maximala tillåtna bredden, i bildpunkter, för listrutan i en kombinationsruta med formatet CBS_DROPDOWN eller CBS_DROPDOWNLIST. |
CB_SETEDITSEL | Ett program skickar ett CB_SETEDITSEL meddelande för att välja tecken i redigeringskontrollen för en kombinationsruta. |
CB_SETEXTENDEDUI | Ett program skickar ett CB_SETEXTENDEDUI meddelande för att välja antingen standardgränssnittet eller det utökade användargränssnittet för en kombinationsruta som har formatet CBS_DROPDOWN eller CBS_DROPDOWNLIST. |
CB_SETHORIZONTALEXTENT | Ett program skickar meddelandet CB_SETHORIZONTALEXTENT för att ange bredden, i bildpunkter, med vilken en listruta kan rullas vågrätt (den rullningsbara bredden). Om listrutans bredd är mindre än det här värdet rullar den vågräta rullningslisten objekt i listrutan vågrätt. Om listrutans bredd är lika med eller större än det här värdet är den vågräta rullningslisten dold eller, om kombinationsrutan har CBS_DISABLENOSCROLL formatmall, inaktiverad. |
CB_SETITEMDATA | Ett program skickar ett CB_SETITEMDATA meddelande för att ange värdet som är associerat med det angivna objektet i en kombinationsruta. |
CB_SETITEMHEIGHT | Ett program skickar ett CB_SETITEMHEIGHT meddelande för att ange höjden på listobjekt eller markeringsfältet i en kombinationsruta. |
CB_SETLOCALE | Ett program skickar ett CB_SETLOCALE meddelande för att ange den aktuella nationella inställningen för kombinationsrutan. Om kombinationsrutan har CBS_SORT formatmall och strängar läggs till med hjälp av CB_ADDSTRINGpåverkar språkvarianten för en kombinationsruta hur listobjekt sorteras. |
CB_SETMINVISIBLE | Ett program skickar ett CB_SETMINVISIBLE meddelande för att ange det minsta antalet synliga objekt i listrutan i en kombinationsruta. |
CB_SETTOPINDEX | Ett program skickar meddelandet CB_SETTOPINDEX för att säkerställa att ett visst objekt visas i listrutan i en kombinationsruta. Systemet rullar listrutans innehåll så att antingen det angivna objektet visas överst i listrutan eller så har det maximala rullningsintervallet nåtts. |
CB_SHOWDROPDOWN | Ett program skickar ett CB_SHOWDROPDOWN meddelande för att visa eller dölja listrutan i en kombinationsruta som har CBS_DROPDOWN eller CBS_DROPDOWNLIST formatmall. |
Meddelanden
Ämne | Innehåll |
---|---|
CBN_CLOSEUP |
CBN_CLOSEUP-meddelandekoden skickas när listrutan i en kombinationsruta har stängts. Kombinationsrutans överordnade fönster tar emot den här meddelandekoden via WM_COMMAND meddelande. |
CBN_DBLCLK |
CBN_DBLCLK-meddelandekoden skickas när användaren dubbelklickar på en sträng i listrutan i en kombinationsruta. Kombinationsrutans överordnade fönster tar emot den här meddelandekoden via WM_COMMAND meddelande. |
CBN_DROPDOWN |
CBN_DROPDOWN-meddelandekoden skickas när listrutan i en kombinationsruta är på väg att visas. Kombinationsrutans överordnade fönster tar emot den här meddelandekoden via WM_COMMAND meddelande. |
CBN_EDITCHANGE | Den CBN_EDITCHANGE meddelandekoden skickas när användaren har vidtagit en åtgärd som kan ha ändrat texten i redigeringskontrolldelen i en kombinationsruta. Till skillnad från CBN_EDITUPDATE meddelandekod skickas den här meddelandekoden när systemet har uppdaterat skärmen. Kombinationsrutans överordnade fönster tar emot den här meddelandekoden via WM_COMMAND meddelande. |
CBN_EDITUPDATE | Den CBN_EDITUPDATE meddelandekoden skickas när redigeringskontrolldelen i en kombinationsruta håller på att visa ändrad text. Den här meddelandekoden skickas när kontrollen har formaterat texten, men innan texten visas. Kombinationsrutans överordnade fönster tar emot den här meddelandekoden via WM_COMMAND meddelande. |
CBN_ERRSPACE |
CBN_ERRSPACE-meddelandekoden skickas när en kombinationsruta inte kan allokera tillräckligt med minne för att uppfylla en specifik begäran. Kombinationsrutans överordnade fönster tar emot den här meddelandekoden via WM_COMMAND meddelande. |
CBN_KILLFOCUS | Meddelandekoden CBN_KILLFOCUS skickas när en kombinationsruta förlorar tangentbordets fokus. Kombinationsrutans överordnade fönster tar emot den här meddelandekoden via WM_COMMAND meddelande. |
CBN_SELCHANGE | Den CBN_SELCHANGE meddelandekoden skickas när användaren ändrar den aktuella markeringen i listrutan i en kombinationsruta. Användaren kan ändra markeringen genom att klicka i listrutan eller med hjälp av piltangenterna. Det överordnade fönstret i kombinationsrutan tar emot det här meddelandet i form av ett WM_COMMAND meddelande med CBN_SELCHANGE i högordningsordet i parametern wParam. |
CBN_SELENDCANCEL |
CBN_SELENDCANCEL-meddelandekoden skickas när användaren väljer ett objekt, men väljer sedan en annan kontroll eller stänger dialogrutan. Det anger att användarens första val ska ignoreras. Kombinationsrutans överordnade fönster tar emot den här meddelandekoden via WM_COMMAND meddelande. |
CBN_SELENDOK | Den CBN_SELENDOK meddelandekoden skickas när användaren väljer ett listobjekt eller väljer ett objekt och stänger sedan listan. Det anger att användarens val ska bearbetas. Kombinationsrutans överordnade fönster tar emot den här meddelandekoden via WM_COMMAND meddelande. |
CBN_SETFOCUS |
CBN_SETFOCUS-meddelandekoden skickas när en kombinationsruta tar emot tangentbordets fokus. Kombinationsrutans överordnade fönster tar emot den här meddelandekoden via WM_COMMAND meddelande. |
WM_COMPAREITEM | Systemet skickar WM_COMPAREITEM meddelande för att fastställa den relativa positionen för ett nytt objekt i den sorterade listan över en ägarritad kombinationsruta eller listruta. När programmet lägger till ett nytt objekt skickar systemet det här meddelandet till ägaren av en kombinationsruta eller listruta som skapats med formatet CBS_SORT eller LBS_SORT. |
WM_DRAWITEM | Meddelandet WM_DRAWITEM skickas till det överordnade fönstret för en ägarritad knapp, kombinationsruta, listruta eller meny när en visuell aspekt av knappen, kombinationsrutan, listrutan eller menyn har ändrats. |
WM_MEASUREITEM | Meddelandet WM_MEASUREITEM skickas till ägarfönstret för en kombinationsruta, listruta, listvykontroll eller menyalternativ när kontrollen eller menyn skapas. |
Strukturer
Ämne | Innehåll |
---|---|
COMBOBOXINFO | Innehåller statusinformation för kombinationsrutor. |
COMPAREITEMSTRUCT | Tillhandahåller identifierare och programdata för två objekt i en sorterad, ägarritad listruta eller kombinationsruta. |
DRAWITEMSTRUCT | Tillhandahåller nödvändig information i ägarfönstret för att avgöra hur du målar en ägarritad kontroll eller menyalternativ. Ägarfönstret för den ägarritade kontrollen eller menyalternativet tar emot en pekare till den här strukturen som lParam parametern för WM_DRAWITEM-meddelandet. |
MEASUREITEMSTRUCT | Informerar systemet om dimensionerna för en ägarritad kontroll eller menyalternativ. Detta gör att systemet kan bearbeta användarinteraktion med kontrollen på rätt sätt. |
Konstanter
Ämne | Innehåll |
---|---|
kombinationsruteformat | Om du vill skapa en kombinationsruta med hjälp av funktionen CreateWindow eller CreateWindowEx anger du COMBOBOX-klassen, lämpliga fönsterformatkonstanter och en kombination av följande kombinationsruteformat. |