Dela via


Knapp (Windows-kontroller)

Det här avsnittet innehåller information om de programmeringselement som används med knappkontroller. En -knapp är en kontroll som användaren kan klicka på för att ange indata till ett program.

Översikter

Ämne Innehåll
knappmeddelanden I det här avsnittet beskrivs meddelanden som används med knappar.
knapptillstånd I det här avsnittet beskrivs hur valet av en knapp ändrar dess tillstånd och hur programmet ska svara.
knapptyper I det här avsnittet beskrivs olika typer av knappar.
med knappar I det här avsnittet beskrivs hur du utför vissa uppgifter som är associerade med knappar.

Funktioner

Ämne Innehåll
CheckDlgButton Ändrar kontrolltillståndet för en knappkontroll.
CheckRadioButton Lägger till en bockmarkering i (kontrollerar) en angiven alternativknapp i en grupp och tar bort en bockmarkering från (avmarkerar) alla andra alternativknappar i gruppen.
IsDlgButtonChecked Funktionen IsDlgButtonChecked avgör om en knappkontroll är markerad eller om en knappkontroll med tre tillstånd är markerad, avmarkerad eller obestämd.

Makron

Ämne Innehåll
Button_Enable Aktiverar eller inaktiverar en knapp.
Button_GetCheck Hämtar krysstillståndet för en alternativknapp eller kryssruta. Du kan använda det här makrot eller skicka BM_GETCHECK-meddelandet explicit.
Button_GetIdealSize Hämtar storleken på knappen som passar bäst för text och bild, om en bildlista finns. Du kan använda det här makrot eller skicka meddelandet BCM_GETIDEALSIZE explicit.
Button_GetImageList Hämtar den BUTTON_IMAGELIST struktur som beskriver bildlistan som har angetts för en knappkontroll. Du kan använda det här makrot eller skicka meddelandet BCM_GETIMAGELIST explicit.
Button_GetNote Hämtar texten i anteckningen som är associerad med en kommandolänkknapp. Du kan använda det här makrot eller skicka BCM_GETNOTE-meddelandet explicit.
Button_GetNoteLength Hämtar längden på anteckningstexten som kan visas i beskrivningen för en kommandolänk. Använd det här makrot eller skicka BCM_GETNOTELENGTH-meddelandet explicit.
Button_GetSplitInfo Hämtar information för en angiven delningsknappskontroll. Använd det här makrot eller skicka BCM_GETSPLITINFO-meddelandet explicit.
Button_GetState Hämtar krysstillståndet för en alternativknapp eller kryssruta. Du kan använda det här makrot eller skicka meddelandet BM_GETSTATE explicit.
Button_GetText Hämtar texten i en knapp.
Button_GetTextLength Hämtar antalet tecken i texten på en knapp.
Button_GetTextMargin Hämtar marginalerna som används för att rita text i en knappkontroll. Du kan använda det här makrot eller uttryckligen skicka BCM_GETTEXTMARGIN meddelande.
Button_SetCheck Anger krysstillståndet för en alternativknapp eller kryssruta. Du kan använda det här makrot eller skicka meddelandet BM_SETCHECK explicit.
Button_SetDropDownState Anger listrutans tillstånd för en angiven knapp med formatmallen BS_SPLITBUTTON. Använd det här makrot eller skicka BCM_SETDROPDOWNSTATE-meddelandet explicit.
Button_SetElevationRequiredState Anger det utökade tillstånd som krävs för en angiven knapp eller kommandolänk för att visa en upphöjd ikon. Använd det här makrot eller skicka BCM_SETSHIELD-meddelandet explicit.
Button_SetImageList Tilldelar en bildlista till en knappkontroll. Du kan använda det här makrot eller skicka BCM_SETIMAGELIST-meddelandet explicit.
Button_SetNote Anger texten i anteckningen som är associerad med en angiven kommandolänkknapp. Du kan använda det här makrot eller skicka meddelandet BCM_SETNOTE explicit.
Button_SetSplitInfo Anger information för en angiven delningsknappkontroll. Använd det här makrot eller skicka BCM_SETSPLITINFO-meddelandet explicit.
Button_SetState Anger markeringstillståndet för en knapp. Markeringstillståndet anger om knappen är markerad som om användaren hade tryckt på den. Du kan använda det här makrot eller skicka BM_SETSTATE-meddelandet explicit.
Button_SetStyle Anger format för en knapp. Du kan använda det här makrot eller skicka meddelandet BM_SETSTYLE explicit.
Button_SetText Anger texten för en knapp.
Button_SetTextMargin Anger marginalerna för att rita text i en knappkontroll. Du kan använda det här makrot eller skicka BCM_SETTEXTMARGIN-meddelandet explicit.

Meddelanden

Ämne Innehåll
BCM_GETIDEALSIZE Hämtar storleken på knappen som bäst passar dess text och bild, om en bildlista finns. Du kan skicka det här meddelandet explicit eller använda makrot Button_GetIdealSize.
BCM_GETIMAGELIST Hämtar den BUTTON_IMAGELIST struktur som beskriver bildlistan som tilldelats en knappkontroll. Du kan skicka det här meddelandet explicit eller använda makrot Button_GetImageList.
BCM_GETNOTE Hämtar texten i anteckningen som är associerad med en kommandolänkknapp. Du kan skicka det här meddelandet explicit eller använda makrot Button_GetNote.
BCM_GETNOTELENGTH Hämtar längden på anteckningstexten som kan visas i beskrivningen för en kommandolänkknapp. Skicka det här meddelandet explicit eller med hjälp av makrot Button_GetNoteLength.
BCM_GETSPLITINFO Hämtar information för en delad knappkontroll. Skicka det här meddelandet explicit eller med hjälp av makrot Button_GetSplitInfo.
BCM_GETTEXTMARGIN Hämtar marginalerna som används för att rita text i en knappkontroll. Du kan skicka det här meddelandet explicit eller använda makrot Button_GetTextMargin.
BCM_SETDROPDOWNSTATE Anger listrutans tillstånd för en knapp med formatmallen TBSTYLE_DROPDOWN. Skicka det här meddelandet explicit eller med hjälp av makrot Button_SetDropDownState.
BCM_SETIMAGELIST Tilldelar en bildlista till en knappkontroll. Du kan skicka det här meddelandet explicit eller använda makrot Button_SetImageList.
BCM_SETNOTE Anger texten i anteckningen som är associerad med en kommandolänkknapp. Du kan skicka det här meddelandet explicit eller använda makrot Button_SetNote.
BCM_SETSHIELD Anger det utökade tillstånd som krävs för en angiven knapp eller kommandolänk för att visa en upphöjd ikon. Skicka det här meddelandet explicit eller med hjälp av makrot Button_SetElevationRequiredState.
BCM_SETSPLITINFO Anger information för en delad knappkontroll. Skicka det här meddelandet explicit eller med hjälp av makrot Button_SetSplitInfo.
BCM_SETTEXTMARGIN Meddelandet BCM_SETTEXTMARGIN anger marginalerna för att rita text i en knappkontroll.
BM_CLICK Simulerar användaren som klickar på en knapp. Det här meddelandet gör att knappen tar emot WM_LBUTTONDOWN och WM_LBUTTONUP meddelanden och knappens överordnade fönster för att ta emot en BN_CLICKED meddelandekod.
BM_GETCHECK Hämtar krysstillståndet för en alternativknapp eller kryssruta. Du kan skicka det här meddelandet explicit eller använda makrot Button_GetCheck.
BM_GETIMAGE Hämtar ett handtag till bilden (ikon eller bitmapp) som är associerad med knappen.
BM_GETSTATE Hämtar status för en knapp eller kryssruta. Du kan skicka det här meddelandet explicit eller använda makrot Button_GetState.
BM_SETCHECK Anger krysstillståndet för en alternativknapp eller kryssruta. Du kan skicka det här meddelandet explicit eller med hjälp av makrot Button_SetCheck.
BM_SETDONTCLICK Anger en flagga på en alternativknapp som styr genereringen av BN_CLICKED meddelanden när knappen får fokus.
BM_SETIMAGE Associerar en ny bild (ikon eller bitmapp) med knappen.
BM_SETSTATE Anger markeringstillståndet för en knapp. Markeringstillståndet anger om knappen är markerad som om användaren hade tryckt på den. Du kan skicka det här meddelandet explicit eller använda makrot Button_SetState.
BM_SETSTYLE Anger format för en knapp. Du kan skicka det här meddelandet explicit eller använda makrot Button_SetStyle.

Meddelanden

Ämne Innehåll
BCN_DROPDOWN Skickas när användaren klickar på en listrutepil på en knapp. Kontrollens överordnade fönster tar emot den här meddelandekoden i form av ett WM_NOTIFY meddelande.
BCN_HOTITEMCHANGE Meddelar knappkontrollens ägare att musen anger eller lämnar klientområdet för knappkontrollen. Knappkontrollen skickar den här meddelandekoden i form av ett WM_NOTIFY meddelande.
BN_CLICKED Skickas när användaren klickar på en knapp.
Det överordnade fönstret på knappen tar emot BN_CLICKED-meddelandekoden via WM_COMMAND-meddelandet.
BN_DBLCLK Skickas när användaren dubbelklickar på en knapp. Den här meddelandekoden skickas automatiskt för knapparna BS_USERBUTTON, BS_RADIOBUTTONoch BS_OWNERDRAW. Andra knapptyper skickar endast BN_DBLCLK om de har BS_NOTIFY formatmall.
Det överordnade fönstret på knappen tar emot BN_DBLCLK-meddelandekoden via WM_COMMAND-meddelandet.
BN_DISABLE Skickas när en knapp är inaktiverad. Obs! Den här meddelandekoden tillhandahålls endast för kompatibilitet med 16-bitarsversioner av Windows tidigare än version 3.0. Program bör använda knappformatet BS_OWNERDRAW och DRAWITEMSTRUCT struktur för den här uppgiften.
Det överordnade fönstret på knappen tar emot BN_DISABLE-meddelandekoden via WM_COMMAND-meddelandet.
BN_DOUBLECLICKED Skickas när användaren dubbelklickar på en knapp. Den här meddelandekoden skickas automatiskt för knapparna BS_USERBUTTON, BS_RADIOBUTTONoch BS_OWNERDRAW. Andra knapptyper skickar endast BN_DOUBLECLICKED om de har BS_NOTIFY formatmall.
Det överordnade fönstret på knappen tar emot BN_DOUBLECLICKED-meddelandekoden via WM_COMMAND-meddelandet.
BN_HILITE Skickas när användaren väljer en knapp. Obs! Den här meddelandekoden tillhandahålls endast för kompatibilitet med 16-bitarsversioner av Windows tidigare än version 3.0. Program bör använda knappformatet BS_OWNERDRAW och DRAWITEMSTRUCT struktur för den här uppgiften.
Det överordnade fönstret på knappen tar emot BN_HILITE-meddelandekoden via WM_COMMAND-meddelandet.
BN_KILLFOCUS Skickas när en knapp förlorar tangentbordets fokus. Knappen måste ha BS_NOTIFY formatmall för att skicka den här meddelandekoden.
Det överordnade fönstret på knappen tar emot BN_KILLFOCUS-meddelandekoden via WM_COMMAND-meddelandet.
BN_PAINT Skickas när en knapp ska målas. Obs! Den här meddelandekoden tillhandahålls endast för kompatibilitet med 16-bitarsversioner av Windows tidigare än version 3.0. Program bör använda knappformatet BS_OWNERDRAW och DRAWITEMSTRUCT struktur för den här uppgiften.
Det överordnade fönstret på knappen tar emot BN_PAINT-meddelandekoden via WM_COMMAND-meddelandet.
BN_PUSHED Skickas när push-tillståndet för en knapp är inställt på push-överföring. Obs! Den här meddelandekoden tillhandahålls endast för kompatibilitet med 16-bitarsversioner av Windows tidigare än version 3.0. Program bör använda knappformatet BS_OWNERDRAW och DRAWITEMSTRUCT struktur för den här uppgiften.
Det överordnade fönstret på knappen tar emot BN_PUSHED-meddelandekoden via WM_COMMAND-meddelandet.
BN_SETFOCUS Skickas när en knapp tar emot tangentbordets fokus. Knappen måste ha BS_NOTIFY formatmall för att skicka den här meddelandekoden.
Det överordnade fönstret på knappen tar emot BN_SETFOCUS-meddelandekoden via WM_COMMAND-meddelandet.
BN_UNHILITE Skickas när markeringar ska tas bort från en knapp. Obs! Den här meddelandekoden tillhandahålls endast för kompatibilitet med 16-bitarsversioner av Windows tidigare än version 3.0. Program bör använda knappformatet BS_OWNERDRAW och DRAWITEMSTRUCT struktur för den här uppgiften.
Det överordnade fönstret på knappen tar emot BN_UNHILITE-meddelandekoden via WM_COMMAND-meddelandet.
BN_UNPUSHED Skickas när push-tillståndet för en knapp är inställt på unpushed. Obs! Den här meddelandekoden tillhandahålls endast för kompatibilitet med 16-bitarsversioner av Windows tidigare än version 3.0. Program bör använda knappformatet BS_OWNERDRAW och DRAWITEMSTRUCT struktur för den här uppgiften.
Det överordnade fönstret på knappen tar emot BN_UNPUSHED-meddelandekoden via WM_COMMAND-meddelandet.
NM_CUSTOMDRAW (knapp) Meddelar det överordnade fönstret i en knappkontroll om anpassade dragningsåtgärder på knappen.
Knappkontrollen skickar den här meddelandekoden i form av ett WM_NOTIFY meddelande.
WM_CTLCOLORBTN Meddelandet WM_CTLCOLORBTN skickas till det överordnade fönstret för en knapp innan du ritar knappen. Det överordnade fönstret kan ändra knappens text- och bakgrundsfärger. Men endast ägarritade knappar svarar på det överordnade fönstret som bearbetar det här meddelandet.

Strukturer

Ämne Innehåll
BUTTON_IMAGELIST Innehåller information om en bildlista som används med en knappkontroll.
BUTTON_SPLITINFO Innehåller information som definierar en delningsknapp (BS_SPLITBUTTON och BS_DEFSPLITBUTTON formatmallar). Används med BCM_GETSPLITINFO- och BCM_SETSPLITINFO-meddelanden.
NMBCDROPDOWN- Innehåller information om ett BCN_DROPDOWN meddelande.
NMBCHOTITEM Innehåller information om musens rörelse över en knappkontroll.

Konstanter

Ämne Innehåll
knappformat Anger en kombination av knappformat. Om du skapar en knapp med hjälp av button-klassen med funktionen CreateWindow eller CreateWindowEx kan du ange någon av de knappformat som anges nedan.