Megosztás a következőn keresztül:


CMFCButton osztály

A CMFCButton osztály olyan funkciókat ad hozzá a CButton osztályhoz, mint a gombszöveg igazítása, a gombszöveg és a kép kombinálása, a kurzor kijelölése és egy eszköztipp megadása.

Szintaxis

class CMFCButton : public CButton

Tagok

Nyilvános konstruktorok

Név Leírás
CMFCButton::CMFCButton Alapértelmezett konstruktor.
CMFCButton::~CMFCButton Destruktor.

Nyilvános metódusok

Név Leírás
CMFCButton::CleanUp Alaphelyzetbe állítja a belső változókat, és felszabadítja a lefoglalt erőforrásokat, például képeket, bitképeket és ikonokat.
CMFCButton::CreateObject A keretrendszer egy ilyen típusú dinamikus példány létrehozásához használja.
CMFCButton::DrawItem A keretrendszer meghívta, amikor egy tulajdonos által rajzolt gomb vizuális aspektusa megváltozott. (Felülbírálások CButton::DrawItem.)
CMFCButton::EnableFullTextTooltip Meghatározza, hogy egy elemleírás teljes szövegét megjelenítse-e egy nagy elemleírás-ablakban, vagy a szöveg csonkolt verzióját egy kis elemleírás-ablakban.
CMFCButton::EnableMenuFont Megadja, hogy a gomb szövegének betűtípusa megegyezik-e az alkalmazásmenü betűtípusával.
CMFCButton::EnableWindowsTheming Megadja, hogy a gombszegély stílusa megfelel-e az aktuális Windows-témának.
CMFCButton::GetThisClass A keretrendszer az ehhez az osztálytípushoz társított CRuntimeClass objektumra mutató mutató lekéréséhez használható.
CMFCButton::GetToolTipCtrl A mögöttes elemleírás-vezérlőre mutató hivatkozást ad vissza.
CMFCButton::IsAutoCheck Azt jelzi, hogy a jelölőnégyzet vagy a választógomb automatikus gomb-e.
CMFCButton::IsAutorepeatCommandMode Azt jelzi, hogy egy gomb automatikus ismétlési módra van-e beállítva.
CMFCButton::IsCheckBox Azt jelzi, hogy a gomb jelölőnégyzet gomb-e.
CMFCButton::IsChecked Azt jelzi, hogy az aktuális gomb be van-e jelölve.
CMFCButton::IsHighlighted Azt jelzi, hogy egy gomb ki van-e emelve.
CMFCButton::IsPressed Azt jelzi, hogy egy gomb le van-e nyomva és kiemelve.
CMFCButton::IsPushed Azt jelzi, hogy le van-e nyomva egy gomb.
CMFCButton::IsRadioButton Azt jelzi, hogy a gomb egy választógomb-e.
CMFCButton::IsWindowsThemingEnabled Azt jelzi, hogy a gombszegély stílusa megfelel-e az aktuális Windows-témának.
CMFCButton::OnDrawParentBackground A gomb szülőjének hátterét rajzolja meg a megadott területen. (Felülbírálások AFX_GLOBAL_DATA::DrawParentBackground.)
CMFCButton::PreTranslateMessage Lefordítja az ablaküzeneteket, mielőtt elküldené őket a TranslateMessage és DispatchMessage Windows-függvényekbe. (Felülbírálások CWnd::PreTranslateMessage.)
CMFCButton::SetAutorepeatMode Beállít egy gombot automatikus ismétlési módra.
CMFCButton::SetCheckedImage Bejelölt gomb képének beállítása.
CMFCButton::SetFaceColor Beállítja a gomb szövegének háttérszínét.
CMFCButton::SetImage Beállítja a képet egy gombhoz.
CMFCButton::SetMouseCursor Beállítja a kurzor képét.
CMFCButton::SetMouseCursorHand A kurzort egy kéz képére állítja.
CMFCButton::SetStdImage Egy CMenuImages objektummal állítja be a gomb képét.
CMFCButton::SetTextColor Beállítja a gomb szövegének színét egy olyan gombhoz, amely nincs kijelölve.
CMFCButton::SetTextHotColor A kijelölt gomb szövegének színét állítja be.
CMFCButton::SetTooltip Elemleírás társítása egy gombbal.
CMFCButton::SizeToContent Átméretez egy gombot, hogy tartalmazza a gomb szövegét és képét.

Védett metódusok

Név Leírás
CMFCButton::OnDraw A keretrendszer meghívta, hogy rajzoljon egy gombot.
CMFCButton::OnDrawBorder A keretrendszer meghívta, hogy megrajzolja egy gomb szegélyét.
CMFCButton::OnDrawFocusRect A keretrendszer meghívta, hogy megrajzolja a fókusz téglalapot egy gombhoz.
CMFCButton::OnDrawText A keretrendszer meghívta a gomb szövegének rajzolásához.
CMFCButton::OnFillBackground A keretrendszer meghívta, hogy megrajzolja a gomb szövegének hátterét.
CMFCButton::SelectFont Lekéri a megadott eszközkörnyezethez társított betűtípust.

Adattagok

Név Leírás
CMFCButton::m_nAlignStyle A gomb szövegének igazítását adja meg.
CMFCButton::m_bDontUseWinXPTheme Megadja, hogy Windows XP-témákat használjon-e.
CMFCButton::m_bDrawFocus Azt jelzi, hogy egy fókusz téglalapot szeretne-e rajzolni egy gomb köré.
CMFCButton::m_nFlatStyle Megadja a gomb stílusát, például szegély nélküli, lapos, félig lapos vagy 3D.
CMFCButton::m_bGrayDisabled Ha TRUE, akkor a letiltott gomb szürkére van rajzolva.
CMFCButton::m_bHighlightChecked Azt jelzi, hogy ki kell-e emelni egy BS_CHECKBOX-style gombot, amikor a kurzor rámutat rá.
CMFCButton::m_bResponseOnButtonDown Azt jelzi, hogy válaszoljon-e a gombot lenyomó eseményekre.
CMFCButton::m_bRightImage Azt jelzi, hogy megjelenít-e egy képet a gomb jobb oldalán.
CMFCButton::m_bTopImage Azt jelzi, hogy a kép a gomb tetején van-e.
CMFCButton::m_bTransparent Azt jelzi, hogy a gomb átlátszó-e.
CMFCButton::m_bWasDblClk Azt jelzi, hogy az utolsó kattintási esemény dupla kattintás volt-e.

Megjegyzések

Más típusú gombok a CMFCButton osztályból származnak, például a hivatkozásokat támogató CMFCURLLinkButton osztályból és a CMFCColorButton osztályból, amely támogatja a színválasztó párbeszédpanelt.

Egy CMFCButton objektum stílusa lehet 3D, flat, semi-flat vagy no border. A gomb szövege igazítható egy gomb bal, felső vagy középső részén. Futtatáskor szabályozhatja, hogy a gomb megjelenít-e szöveget, képet vagy szöveget és képet. Azt is megadhatja, hogy egy adott kurzorkép jelenjen meg, amikor a kurzor egy gombra mutat.

Hozzon létre egy gombvezérlőt közvetlenül a kódban, vagy az MFC-osztály varázsló eszközzel és egy párbeszédpanelsablonnal. Ha közvetlenül hoz létre gombvezérlőt, adjon hozzá egy CMFCButton változót az alkalmazáshoz, majd hívja meg a CMFCButton objektum konstruktorát és Create metódusait. Ha az MFC osztályvarázslóthasználja, adjon hozzá egy CButton változót az alkalmazáshoz, majd módosítsa a változó típusát CButton-ről CMFCButton- ra.

Ha egy párbeszédpanel-alkalmazásban szeretné kezelni az értesítési üzeneteket, minden egyes értesítéshez adjon hozzá egy üzenettérkép-bejegyzést és egy eseménykezelőt. A CMFCButton objektum által küldött értesítések megegyeznek az CButton objektum által küldött értesítésekkel.

Példa

Az alábbi példa bemutatja, hogyan konfigurálhatja a gomb tulajdonságait a CMFCButton osztály különböző metódusaival. A példa az Új vezérlők mintarésze.

CMFCButton m_Button;
// int m_iImage
// IDB_BTN1_32, IDB_BTN1_HOT_32, IDB_BTN1, IDB_BTN1_HOT are int macros that are #define.
if (m_iImage == 1)
{
   m_Button.SetImage((HBITMAP)NULL);
}
else
{
   m_Button.SetImage(IDB_BTN1_32, IDB_BTN1_HOT_32);
}
// int m_iImage
if (m_iImage == 0)
{
   m_Button.SetWindowText(_T(""));
}
else
{
   m_Button.SetWindowText(_T("Button"));
}
// Resize the button.
m_Button.SizeToContent();
m_Button.EnableFullTextTooltip(true);
// Use the application menu font at the button text font.
m_Button.EnableMenuFont();
// Use the current Windows theme to draw the button borders.
m_Button.EnableWindowsTheming(true);
// Set the button to auto-repeat mode.
m_Button.SetAutorepeatMode();
// Set the background color for the button text.
m_Button.SetFaceColor(RGB(255,0,0),true);
m_Button.SetTextColor(RGB(0,0,255));
// Set the tooltip of the button.
m_Button.SetTooltip(_T("this is a button!"));

Öröklési hierarchia

CObject

CCmdTarget

CWnd

CButton

CMFCButton

Követelmények

fejléc:afxbutton.h

CMFCButton::CleanUp

Alaphelyzetbe állítja a belső változókat, és felszabadítja a lefoglalt erőforrásokat, például képeket, bitképeket és ikonokat.

virtual void CleanUp();

CMFCButton::EnableFullTextTooltip

Meghatározza, hogy egy elemleírás teljes szövegét megjelenítse-e egy nagy elemleírás-ablakban, vagy a szöveg csonkolt verzióját egy kis elemleírás-ablakban.

void EnableFullTextTooltip(BOOL bOn=TRUE);

Paraméterek

bOn
[in] TRUE az összes szöveg megjelenítéséhez; FALSE csonkolt szöveg megjelenítéséhez.

CMFCButton::EnableMenuFont

Megadja, hogy a gomb szövegének betűtípusa megegyezik-e az alkalmazásmenü betűtípusával.

void EnableMenuFont(
    BOOL bOn=TRUE,
    BOOL bRedraw=TRUE);

Paraméterek

bOn
[in] TRUE, hogy az alkalmazásmenü betűtípusát használja gombszöveg-betűtípusként; FALSE a rendszer betűtípusának használatára. Az alapértelmezett érték a TRUE.

bRedraw
[in] TRUE, hogy azonnal újrarajzolva a képernyőt; ellenkező esetben FALSE. Az alapértelmezett érték a TRUE.

Megjegyzések

Ha nem ezzel a módszerrel adja meg a gombszöveg betűtípusát, a betűtípust a CWnd::SetFont metódussal adhatja meg. Ha egyáltalán nem ad meg betűtípust, a keretrendszer beállít egy alapértelmezett betűtípust.

CMFCButton::EnableWindowsTheming

Megadja, hogy a gombszegély stílusa megfelel-e az aktuális Windows-témának.

static void EnableWindowsTheming(BOOL bEnable = TRUE);

Paraméterek

bEnable
[in] TRUE, hogy az aktuális Windows-témát használja gombszegélyek rajzolásához; FALSE, hogy ne használja a Windows-témát. Az alapértelmezett érték a TRUE.

Megjegyzések

Ez a módszer az alkalmazás összes olyan gombját érinti, amely a CMFCButton osztályból származik.

CMFCButton::GetToolTipCtrl

A mögöttes elemleírás-vezérlőre mutató hivatkozást ad vissza.

CToolTipCtrl& GetToolTipCtrl();

Visszaadott érték

Hivatkozás az alapul szolgáló elemleírás-vezérlőre.

CMFCButton::IsAutoCheck

Azt jelzi, hogy a jelölőnégyzet vagy a választógomb automatikus gomb-e.

BOOL IsAutoCheck() const;

Visszaadott érték

TRUE, hogy a gomb stílusa BS_AUTOCHECKBOX vagy BS_AUTORADIOBUTTON; ellenkező esetben FALSE.

CMFCButton::IsAutorepeatCommandMode

Azt jelzi, hogy egy gomb automatikus ismétlési módra van-e beállítva.

BOOL IsAutorepeatCommandMode() const;

Visszaadott érték

TRUE, hogy a gomb automatikus ismétlési módra van-e beállítva; ellenkező esetben FALSE.

Megjegyzések

A CMFCButton::SetAutorepeatMode metódussal állíthat be egy gombot automatikus ismétlési módra.

CMFCButton::IsCheckBox

Azt jelzi, hogy a gomb jelölőnégyzet gomb-e.

BOOL IsCheckBox() const;

Visszaadott érték

TRUE, hogy a gomb BS_CHECKBOX vagy BS_AUTOCHECKBOX stílussal rendelkezik-e; ellenkező esetben FALSE.

CMFCButton::IsChecked

Azt jelzi, hogy az aktuális gomb be van-e jelölve.

BOOL IsChecked() const;

Visszaadott érték

TRUE, ha az aktuális gomb be van jelölve; ellenkező esetben FALSE.

Megjegyzések

A keretrendszer különböző módokon jelzi, hogy a rendszer különböző típusú gombokat ellenőriz. Egy választógomb például akkor van bejelölve, ha az tartalmaz egy elemet; jelölőnégyzet be van jelölve, ha Xtartalmaz.

CMFCButton::IsHighlighted

Azt jelzi, hogy egy gomb ki van-e emelve.

BOOL IsHighlighted() const;

Visszaadott érték

TRUE, ha a gomb ki van emelve; ellenkező esetben FALSE.

Megjegyzések

A gomb akkor lesz kiemelve, ha az egér a gomb fölé mutat.

CMFCButton::IsPressed

Azt jelzi, hogy egy gomb le van-e nyomva és kiemelve.

BOOL IsPressed() const;

Visszaadott érték

TRUE, ha a gomb megnyomva van; ellenkező esetben FALSE.

CMFCButton::IsPushed

Azt jelzi, hogy le van-e nyomva egy gomb.

BOOL IsPushed() const;

Visszaadott érték

TRUE, hogy a gomb le van-e nyomva; ellenkező esetben FALSE.

CMFCButton::IsRadioButton

Azt jelzi, hogy a gomb egy választógomb-e.

BOOL IsRadioButton() const;

Visszaadott érték

TRUE, hogy a gombstílus BS_RADIOBUTTON vagy BS_AUTORADIOBUTTON; ellenkező esetben FALSE.

CMFCButton::IsWindowsThemingEnabled

Azt jelzi, hogy a gombszegély stílusa megfelel-e az aktuális Windows-témának.

static BOOL IsWindowsThemingEnabled();

Visszaadott érték

TRUE, hogy a gombszegély stílusa megfelel-e az aktuális Windows-témának; ellenkező esetben FALSE.

CMFCButton::m_bDontUseWinXPTheme

Megadja, hogy Windows XP-témákat használjon-e a gomb rajzolásakor.

BOOL m_bDontUseWinXPTheme;

CMFCButton::m_bDrawFocus

Azt jelzi, hogy egy fókusz téglalapot szeretne-e rajzolni egy gomb köré.

BOOL m_bDrawFocus;

Megjegyzések

Állítsa be a m_bDrawFocus tagot TRUE annak megadásához, hogy a keretrendszer egy fókusz téglalapot rajzoljon a gomb szövege és képe köré, ha a gomb fókuszt kap.

A CMFCButton konstruktor inicializálja ezt a tagot TRUE.

CMFCButton::m_bGrayDisabled

Ha TRUE, akkor a letiltott gomb szürkére van rajzolva.

BOOL m_bGrayDisabled;

CMFCButton::m_bHighlightChecked

Azt jelzi, hogy ki kell-e emelni egy BS_CHECKBOX-style gombot, amikor a kurzor rámutat rá.

BOOL m_bHighlightChecked;

Megjegyzések

Állítsa a m_bHighlightChecked tagot TRUE annak megadásához, hogy a keretrendszer kiemeljen egy BS_CHECKBOXstílusgombot, amikor az egér rá mutat.

CMFCButton::m_bResponseOnButtonDown

Azt jelzi, hogy válaszoljon-e a gombot lenyomó eseményekre.

BOOL m_bResponseOnButtonDown;

CMFCButton::m_bRightImage

Azt jelzi, hogy megjelenít-e egy képet a gomb jobb oldalán.

BOOL m_bRightImage;

CMFCButton::m_bTopImage

Azt jelzi, hogy a kép a gomb tetején van-e.

BOOL m_bTopImage;

Megjegyzések

Állítsa a m_bRightImage tagot TRUE annak megadásához, hogy a keretrendszer a gomb szövegfeliratától jobbra jelenítse meg a gomb képét.

CMFCButton::m_bTransparent

Azt jelzi, hogy a gomb átlátszó-e.

BOOL m_bTransparent;

Megjegyzések

Állítsa a m_bTransparent tagot TRUE, hogy a keretrendszer transzparenssé tegye a gombot. A CMFCButton konstruktor inicializálja ezt a tagot FALSE.

CMFCButton::m_nAlignStyle

A gomb szövegének igazítását adja meg.

AlignStyle m_nAlignStyle;

Megjegyzések

A gomb szövegének igazítását az alábbi CMFCButton::AlignStyle számbavételi értékek egyikével adhatja meg:

Érték Leírás
ALIGN_CENTER (Alapértelmezett) A gomb szövegének igazítása a gomb közepéhez.
ALIGN_LEFT A gomb szövegének igazítása a gomb bal oldalához.
ALIGN_RIGHT A gomb szövegének igazítása a gomb jobb oldalához.

A CMFCButton konstruktor inicializálja ezt a tagot ALIGN_CENTER.

CMFCButton::m_bWasDblClk

Azt jelzi, hogy az utolsó kattintási esemény dupla kattintás volt-e.

BOOL m_bWasDblClk;

CMFCButton::m_nFlatStyle

Megadja a gomb stílusát, például szegély nélküli, lapos, félig lapos vagy 3D.

FlatStyle m_nFlatStyle;

Megjegyzések

Az alábbi táblázat felsorolja a gomb megjelenését meghatározó CMFCButton::m_nFlatStyle enumerálási értékeket.

Érték Leírás
BUTTONSTYLE_3D (Alapértelmezett) Úgy tűnik, hogy a gombnak magas, háromdimenziós oldalai vannak. Amikor a gombra kattint, a gomb mély behúzásba kerül.
BUTTONSTYLE_FLAT Ha az egér nem szünetelteti a gombot, úgy tűnik, hogy a gomb kétdimenziós, és nincsenek emelt oldalai. Amikor az egér a gomb fölé áll, úgy tűnik, hogy a gombnak alacsony, háromdimenziós oldalai vannak. Ha a gombra kattint, úgy tűnik, hogy a gombot egy sekély behúzásba kell nyomni.
BUTTONSTYLE_SEMIFLAT Úgy tűnik, hogy a gombnak alacsony, háromdimenziós oldalai vannak. Amikor a gombra kattint, a gomb mély behúzásba kerül.
BUTTONSTYLE_NOBORDERS A gombnak nincsenek emelt oldalai, és mindig kétdimenziósnak tűnik. Úgy tűnik, hogy a gomb kattintáskor nem lesz behúzásba nyomva.

A CMFCButton konstruktor inicializálja ezt a tagot BUTTONSTYLE_3D.

Példa

Az alábbi példa bemutatja, hogyan állíthatja be az m_nFlatStyle tagváltozó értékeit a CMFCButton osztályban. Ez a példa az Új vezérlők mintarésze.

CMFCButton m_Button;
//int m_iBorderStyle
switch (m_iBorderStyle)
{
case 0:
   m_Button.m_nFlatStyle = CMFCButton::BUTTONSTYLE_FLAT;
   break;

case 1:
   m_Button.m_nFlatStyle = CMFCButton::BUTTONSTYLE_SEMIFLAT;
   break;

case 2:
   m_Button.m_nFlatStyle = CMFCButton::BUTTONSTYLE_3D;
}

CMFCButton::OnDraw

A keretrendszer meghívta, hogy rajzoljon egy gombot.

virtual void OnDraw(
    CDC* pDC,
    const CRect& rect,
    UINT uiState);

Paraméterek

pDC
[in] Egy eszközkörnyezetre mutató mutató.

rect
[in] Hivatkozás a gombot határoló téglalapra.

uiState
[in] Az aktuális gomb állapota. További információkért lásd a DRAWITEMSTRUCT Struktúra témakör itemState tagját.

Megjegyzések

Írja felül ezt a metódust, hogy saját kóddal rajzoljon egy gombot.

CMFCButton::OnDrawBorder

A keretrendszer meghívta, hogy megrajzolja egy gomb szegélyét.

virtual void OnDrawBorder(
    CDC* pDC,
    CRect& rectClient,
    UINT uiState);

Paraméterek

pDC
[in] Egy eszközkörnyezetre mutató mutató.

rectClient
[in] Hivatkozás a gombot határoló téglalapra.

uiState
[in] Az aktuális gomb állapota. További információkért lásd a DRAWITEMSTRUCT Struktúra témakör itemState tagját.

Megjegyzések

Bírálja felül ezt a metódust, hogy saját kóddal rajzolja meg a szegélyt.

CMFCButton::OnDrawFocusRect

A keretrendszer meghívta, hogy megrajzolja a fókusz téglalapot egy gombhoz.

virtual void OnDrawFocusRect(
    CDC* pDC,
    const CRect& rectClient);

Paraméterek

pDC
[in] Egy eszközkörnyezetre mutató mutató.

rectClient
[in] Hivatkozás a gombot határoló téglalapra.

Megjegyzések

Bírálja felül ezt a módszert, hogy saját kóddal rajzolja meg a fókusz téglalapját.

CMFCButton::OnDrawText

A keretrendszer meghívta a gomb szövegének rajzolásához.

virtual void OnDrawText(
    CDC* pDC,
    const CRect& rect,
    const CString& strText,
    UINT uiDTFlags,
    UINT uiState);

Paraméterek

pDC
[in] Egy eszközkörnyezetre mutató mutató.

rect
[in] Hivatkozás a gombot határoló téglalapra.

strText
[in] A rajzolni kívánt szöveg.

uiDTFlags
[in] A szöveg formázását meghatározó jelzők. További információt a CDC::DrawText metódus nFormat paraméterében talál.

uiState
[in] Tartózkodó.

Megjegyzések

Írja felül ezt a metódust, hogy saját kóddal rajzolja meg a gomb szövegét.

CMFCButton::OnFillBackground

A keretrendszer meghívta, hogy megrajzolja a gomb szövegének hátterét.

virtual void OnFillBackground(
    CDC* pDC,
    const CRect& rectClient);

Paraméterek

pDC
[in] Egy eszközkörnyezetre mutató mutató.

rectClient
[in] Hivatkozás a gombot határoló téglalapra.

Megjegyzések

Bírálja felül ezt a metódust, hogy saját kóddal rajzolja meg egy gomb hátterét.

CMFCButton::SelectFont

Lekéri a megadott eszközkörnyezethez társított betűtípust.

virtual CFont* SelectFont(CDC* pDC);

Paraméterek

pDC
[in] Egy eszközkörnyezetre mutató mutató.

Visszaadott érték

Bírálja felül ezt a metódust, hogy saját kóddal kérje le a betűtípust.

CMFCButton::SetAutorepeatMode

Beállít egy gombot automatikus ismétlési módra.

void SetAutorepeatMode(int nTimeDelay=500);

Paraméterek

nTimeDelay
[in] Nem nemegatív szám, amely a szülőablakba küldött üzenetek közötti időközt adja meg. Az intervallumot ezredmásodpercben méri, alapértelmezett értéke pedig 500 ezredmásodperc. Adjon meg nullát az automatikus ismétlési mód letiltásához.

Megjegyzések

Ez a módszer azt eredményezi, hogy a gomb folyamatosan küld WM_COMMAND üzeneteket a szülőablakba, amíg a gomb ki nem szabadul, vagy a nTimeDelay paraméter értéke nulla.

CMFCButton::SetCheckedImage

Bejelölt gomb képének beállítása.

void SetCheckedImage(
    HICON hIcon,
    BOOL bAutoDestroy=TRUE,
    HICON hIconHot=NULL,
    HICON hIconDisabled=NULL,
    BOOL bAlphaBlend=FALSE);

void SetCheckedImage(
    HBITMAP hBitmap,
    BOOL bAutoDestroy=TRUE,
    HBITMAP hBitmapHot=NULL,
    BOOL bMap3dColors=TRUE,
    HBITMAP hBitmapDisabled=NULL);

void SetCheckedImage(
    UINT uiBmpResId,
    UINT uiBmpHotResId=0,
    UINT uiBmpDsblResID=0);

Paraméterek

hIcon
[in] Az új kép bitképét és maszkot tartalmazó ikonjának kezelése.

bAutoDestroy
[in] TRUE annak megadására, hogy a bitképerőforrások automatikusan megsemmisüljenek; ellenkező esetben FALSE. Az alapértelmezett érték a TRUE.

hIconHot
[in] A kijelölt állapot képét tartalmazó ikon kezelése.

hBitmap
[in] Kezelje a nem kijelölt állapot képét tartalmazó bitképet.

hBitmapHot
[in] A kijelölt állapot képét tartalmazó bitkép kezelése.

bMap3dColors
[in] A gombháttér áttetsző színét adja meg; vagyis a gomb arca. az RGB(192, 192, 192, 192) színérték használatára TRUE; FALSE a AFX_GLOBAL_DATA::clrBtnFaceáltal definiált színérték használatára.

uiBmpResId
[in] A nem kijelölt rendszerkép erőforrás-azonosítója.

uiBmpHotResId
[in] A kijelölt kép erőforrás-azonosítója.

hIconDisabled
[in] A letiltott kép ikonjának kezelése.

hBitmapDisabled
[in] Kezelje a letiltott képet tartalmazó bitképet.

uiBmpDsblResID
[in] A letiltott bitkép erőforrás-azonosítója.

bAlphaBlend
[in] TRUE csak az alfa csatornát használó 32 bites képeket használni; FALSE, hogy ne csak alfa csatornaképeket használjon. Az alapértelmezett érték a FALSE.

CMFCButton::SetFaceColor

Beállítja a gomb szövegének háttérszínét.

void SetFaceColor(
    COLORREF crFace,
    BOOL bRedraw=TRUE);

Paraméterek

crFace
[in] RGB-színérték.

bRedraw
[in] TRUE a képernyő azonnali újraírásához; ellenkező esetben FALSE.

Megjegyzések

Ezzel a módszerrel új kitöltési színt határozhat meg a gombháttérhez (archoz). Vegye figyelembe, hogy a háttér nincs kitöltve, ha a CMFCButton::m_bTransparent tagváltozó TRUE.

CMFCButton::SetImage

Beállítja a képet egy gombhoz.

void SetImage(
    HICON hIcon,
    BOOL bAutoDestroy=TRUE,
    HICON hIconHot=NULL,
    HICON hIconDisabled=NULL,
    BOOL bAlphaBlend=FALSE);

void SetImage(
    HBITMAP hBitmap,
    BOOL bAutoDestroy=TRUE,
    HBITMAP hBitmapHot=NULL,
    BOOL bMap3dColors=TRUE,
    HBITMAP hBitmapDisabled=NULL);

void SetImage(
    UINT uiBmpResId,
    UINT uiBmpHotResId=0,
    UINT uiBmpDsblResID=0);

Paraméterek

hIcon
[in] Az új kép bitképét és maszkot tartalmazó ikonjának kezelése.

bAutoDestroy
[in] TRUE annak megadására, hogy a bitképerőforrások automatikusan megsemmisüljenek; ellenkező esetben FALSE. Az alapértelmezett érték a TRUE.

hIconHot
[in] A kijelölt állapot képét tartalmazó ikon kezelése.

hBitmap
[in] Kezelje a nem kijelölt állapot képét tartalmazó bitképet.

hBitmapHot
[in] A kijelölt állapot képét tartalmazó bitkép kezelése.

uiBmpResId
[in] A nem kijelölt rendszerkép erőforrás-azonosítója.

uiBmpHotResId
[in] A kijelölt kép erőforrás-azonosítója.

bMap3dColors
[in] A gombháttér áttetsző színét adja meg; vagyis a gomb arca. az RGB(192, 192, 192, 192) színérték használatára TRUE; FALSE a AFX_GLOBAL_DATA::clrBtnFaceáltal definiált színérték használatára.

hIconDisabled
[in] A letiltott kép ikonjának kezelése.

hBitmapDisabled
[in] Kezelje a letiltott képet tartalmazó bitképet.

uiBmpDsblResID
[in] A letiltott bitkép erőforrás-azonosítója.

bAlphaBlend
[in] TRUE csak az alfa csatornát használó 32 bites képeket használni; FALSE, hogy ne csak alfa csatornaképeket használjon. Az alapértelmezett érték a FALSE.

Példa

Az alábbi példa bemutatja, hogyan használható a SetImage metódus különböző verziói a CMFCButton osztályban. A példa az Új vezérlők mintarésze.

CMFCButton m_Button;
// int m_iImage
// IDB_BTN1_32, IDB_BTN1_HOT_32, IDB_BTN1, IDB_BTN1_HOT are int macros that are #define.
if (m_iImage == 1)
{
   m_Button.SetImage((HBITMAP)NULL);
}
else
{
   m_Button.SetImage(IDB_BTN1_32, IDB_BTN1_HOT_32);
}

CMFCButton::SetMouseCursor

Beállítja a kurzor képét.

void SetMouseCursor(HCURSOR hcursor);

Paraméterek

hcursor
[in] A kurzor fogópontja.

Megjegyzések

Ezzel a módszerrel társíthat egy kurzorképet, például a kézi kurzort a gombhoz. A kurzor betöltődik az alkalmazás erőforrásaiból.

Példa

Az alábbi példa bemutatja, hogyan használható a SetMouseCursor metódus a CMFCButton osztályban. A példa az Új vezérlők mintakódjának része.

CMFCButton m_Button;
// int m_iCursor
void CPage1::OnSetCursor()
{
   UpdateData();

   switch (m_iCursor)
   {
   case 0:
      m_Button.SetMouseCursor(NULL);
      break;

   case 1:
      m_Button.SetMouseCursorHand();
      break;

   case 2:
      m_Button.SetMouseCursor(AfxGetApp()->LoadCursor(IDC_CURSOR));
      break;
   }
}

CMFCButton::SetMouseCursorHand

A kurzort egy kéz képére állítja.

void SetMouseCursorHand();

Megjegyzések

Ezzel a módszerrel társíthatja egy kéz kurzorképét a gombhoz. A kurzor betöltődik az alkalmazás erőforrásaiból.

CMFCButton::SetStdImage

Egy CMenuImages objektummal állítja be a gomb képét.

void SetStdImage(
    CMenuImages::IMAGES_IDS id,
    CMenuImages::IMAGE_STATE state=CMenuImages::ImageBlack,
    CMenuImages::IMAGES_IDS idDisabled=(CMenuImages::IMAGES_IDS)0);

Paraméterek

id
[in] A CMenuImage::IMAGES_IDS enumerálásban definiált gombkép-azonosítók egyike. A képértékek olyan képeket határoznak meg, mint a nyilak, a kitűzők és a választógombok.

state
[in] Az CMenuImages::IMAGE_STATE enumerálásban definiált gombképállapot-azonosítók egyike. A képállapotok olyan gombszíneket határoznak meg, mint a fekete, a szürke, a világosszürke, a fehér és a sötétszürke. Az alapértelmezett érték a CMenuImages::ImageBlack.

idDisabled
[in] A CMenuImage::IMAGES_IDS enumerálásban definiált gombkép-azonosítók egyike. A kép azt jelzi, hogy a gomb le van tiltva. Az alapértelmezett érték az első gomb képe (CMenuImages::IdArrowDown).

CMFCButton::SetTextColor

Beállítja a gomb szövegének színét egy olyan gombhoz, amely nincs kijelölve.

void SetTextColor(COLORREF clrText);

Paraméterek

clrText
[in] RGB-színérték.

CMFCButton::SetTextHotColor

A kijelölt gomb szövegének színét állítja be.

void SetTextHotColor(COLORREF clrTextHot);

Paraméterek

clrTextHot
[in] RGB-színérték.

CMFCButton::SetTooltip

Elemleírás társítása egy gombbal.

void SetTooltip(LPCTSTR lpszToolTipText);

Paraméterek

lpszToolTipText
[in] Mutasson az elemleírás szövegére. Adja meg az elemleírás letiltásához NULL.

CMFCButton::SizeToContent

Átméretez egy gombot, hogy tartalmazza a gomb szövegét és képét.

virtual CSize SizeToContent(BOOL bCalcOnly=FALSE);

Paraméterek

bCalcOnly
[in] TRUE a gomb új méretének kiszámításához, de nem változtatható meg; FALSE a gomb méretének módosításához. Az alapértelmezett érték a FALSE.

Visszaadott érték

Egy CSize objektum, amely a gomb új méretét tartalmazza.

Megjegyzések

Ez a módszer alapértelmezés szerint egy új méretet számít ki, amely 10 képpontos vízszintes margót és 5 képpontos függőleges margót tartalmaz.

Lásd még:

hierarchiadiagram
osztályok
CMFCLinkCtrl osztály
CMFCColorButton osztály
CMFCMenuButton osztály