CMFCButton
Klasa
Klasa CMFCButton
dodaje funkcje do CButton
klasy, takie jak wyrównanie tekstu przycisku, połączenie tekstu przycisku i obrazu, wybranie kursora i określenie porady narzędzia.
Składnia
class CMFCButton : public CButton
Elementy członkowskie
Konstruktory publiczne
Nazwa/nazwisko | opis |
---|---|
CMFCButton::CMFCButton |
Konstruktor domyślny. |
CMFCButton::~CMFCButton |
Destruktor. |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CMFCButton::CleanUp |
Resetuje zmienne wewnętrzne i zwalnia przydzielone zasoby, takie jak obrazy, mapy bitowe i ikony. |
CMFCButton::CreateObject |
Używana przez platformę do tworzenia wystąpienia dynamicznego tego typu klasy. |
CMFCButton::DrawItem |
Wywoływana przez platformę, gdy zmieni się wizualny aspekt przycisku rysowanego przez właściciela. (Przesłania CButton::DrawItem ). |
CMFCButton::EnableFullTextTooltip |
Określa, czy ma być wyświetlany pełny tekst etykietki narzędzia w dużym oknie etykietki narzędzia, czy obcięta wersja tekstu w małym oknie etykietki narzędzia. |
CMFCButton::EnableMenuFont |
Określa, czy czcionka tekstowa przycisku jest taka sama jak czcionka menu aplikacji. |
CMFCButton::EnableWindowsTheming |
Określa, czy styl obramowania przycisku odpowiada bieżącemu motywowi systemu Windows. |
CMFCButton::GetThisClass |
Używany przez platformę do uzyskiwania wskaźnika do obiektu skojarzonego CRuntimeClass z tym typem klasy. |
CMFCButton::GetToolTipCtrl |
Zwraca odwołanie do bazowej kontrolki etykietki narzędzia. |
CMFCButton::IsAutoCheck |
Wskazuje, czy pole wyboru, czy przycisk radiowy jest przyciskiem automatycznym. |
CMFCButton::IsAutorepeatCommandMode |
Wskazuje, czy przycisk jest ustawiony na tryb automatycznego powtarzania. |
CMFCButton::IsCheckBox |
Wskazuje, czy przycisk jest przyciskiem pola wyboru. |
CMFCButton::IsChecked |
Wskazuje, czy bieżący przycisk jest zaznaczony. |
CMFCButton::IsHighlighted |
Wskazuje, czy przycisk jest wyróżniony. |
CMFCButton::IsPressed |
Wskazuje, czy przycisk jest wypychany i wyróżniony. |
CMFCButton::IsPushed |
Wskazuje, czy przycisk jest wypychany. |
CMFCButton::IsRadioButton |
Wskazuje, czy przycisk jest przyciskiem radiowym. |
CMFCButton::IsWindowsThemingEnabled |
Wskazuje, czy styl obramowania przycisku odpowiada bieżącemu motywowi systemu Windows. |
CMFCButton::OnDrawParentBackground |
Rysuje tło elementu nadrzędnego przycisku w określonym obszarze. (Przesłonięcia) AFX_GLOBAL_DATA::DrawParentBackground |
CMFCButton::PreTranslateMessage |
Tłumaczy komunikaty okien przed ich wysłaniem do TranslateMessage funkcji systemu i DispatchMessage Windows. (Przesłania CWnd::PreTranslateMessage ). |
CMFCButton::SetAutorepeatMode |
Ustawia przycisk w trybie automatycznego powtarzania. |
CMFCButton::SetCheckedImage |
Ustawia obraz dla zaznaczonego przycisku. |
CMFCButton::SetFaceColor |
Ustawia kolor tła tekstu przycisku. |
CMFCButton::SetImage |
Ustawia obraz przycisku. |
CMFCButton::SetMouseCursor |
Ustawia obraz kursora. |
CMFCButton::SetMouseCursorHand |
Ustawia kursor na obraz dłoni. |
CMFCButton::SetStdImage |
CMenuImages Używa obiektu do ustawiania obrazu przycisku. |
CMFCButton::SetTextColor |
Ustawia kolor tekstu przycisku dla przycisku, który nie jest zaznaczony. |
CMFCButton::SetTextHotColor |
Ustawia kolor tekstu przycisku dla wybranego przycisku. |
CMFCButton::SetTooltip |
Kojarzy etykietkę narzędzia z przyciskiem. |
CMFCButton::SizeToContent |
Zmienia rozmiar przycisku, aby zawierał tekst i obraz przycisku. |
Metody chronione
Nazwa/nazwisko | opis |
---|---|
CMFCButton::OnDraw |
Wywoływana przez strukturę w celu narysowania przycisku. |
CMFCButton::OnDrawBorder |
Wywoływana przez strukturę w celu narysowania obramowania przycisku. |
CMFCButton::OnDrawFocusRect |
Wywoływana przez strukturę w celu narysowania prostokąta fokusu dla przycisku. |
CMFCButton::OnDrawText |
Wywoływana przez strukturę w celu narysowania tekstu przycisku. |
CMFCButton::OnFillBackground |
Wywoływana przez strukturę w celu narysowania tła tekstu przycisku. |
CMFCButton::SelectFont |
Pobiera czcionkę skojarzona z określonym kontekstem urządzenia. |
Składowe danych
Nazwa/nazwisko | opis |
---|---|
CMFCButton::m_nAlignStyle |
Określa wyrównanie tekstu przycisku. |
CMFCButton::m_bDontUseWinXPTheme |
Określa, czy używać motywów systemu Windows XP. |
CMFCButton::m_bDrawFocus |
Wskazuje, czy narysować prostokąt fokusu wokół przycisku. |
CMFCButton::m_nFlatStyle |
Określa styl przycisku, na przykład bez obramowania, płaskie, półpłatne lub 3D. |
CMFCButton::m_bGrayDisabled |
Gdy wartość TRUE, włącza narysowany przycisk wyłączony jako wyszaryzowany. |
CMFCButton::m_bHighlightChecked |
Wskazuje, czy należy wyróżnić przycisk w stylu BS_CHECKBOX po umieszczeniu kursora na nim kursora. |
CMFCButton::m_bResponseOnButtonDown |
Wskazuje, czy należy reagować na zdarzenia przycisku w dół. |
CMFCButton::m_bRightImage |
Wskazuje, czy obraz ma być wyświetlany po prawej stronie przycisku. |
CMFCButton::m_bTopImage |
Wskazuje, czy obraz znajduje się na górze przycisku. |
CMFCButton::m_bTransparent |
Wskazuje, czy przycisk jest przezroczysty. |
CMFCButton::m_bWasDblClk |
Wskazuje, czy zdarzenie ostatniego kliknięcia było dwukrotnym kliknięciem. |
Uwagi
Inne typy przycisków pochodzą z CMFCButton
klasy, takiej jak CMFCURLLinkButton
klasa, która obsługuje hiperlinki, oraz CMFCColorButton
klasę, która obsługuje okno dialogowe selektora kolorów.
Styl CMFCButton
obiektu może mieć 3D
wartość , flat
semi-flat
lub no border
. Tekst przycisku można wyrównać do lewej, górnej lub środkowej części przycisku. W czasie wykonywania możesz kontrolować, czy przycisk wyświetla tekst, obraz, czy tekst i obraz. Można również określić, że określony obraz kursora ma być wyświetlany, gdy kursor zostanie zatrzymany na przycisku.
Utwórz kontrolkę przycisku bezpośrednio w kodzie lub przy użyciu narzędzia Kreator klas MFC i szablonu okna dialogowego. Jeśli utworzysz kontrolkę przycisku bezpośrednio, dodaj zmienną CMFCButton
do aplikacji, a następnie wywołaj konstruktor i Create
metody CMFCButton
obiektu. Jeśli używasz Kreatora klas MFC, dodaj zmienną CButton
do aplikacji, a następnie zmień typ zmiennej z CButton
na CMFCButton
.
Aby obsługiwać komunikaty powiadomień w aplikacji okna dialogowego, dodaj wpis mapy komunikatów i procedurę obsługi zdarzeń dla każdego powiadomienia. Powiadomienia wysyłane przez CMFCButton
obiekt są takie same jak powiadomienia wysyłane przez CButton
obiekt.
Przykład
W poniższym przykładzie pokazano, jak skonfigurować właściwości przycisku przy użyciu różnych metod w CMFCButton
klasie. Przykład jest częścią przykładu Nowe kontrolki.
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!"));
Hierarchia dziedziczenia
Wymagania
Nagłówek: afxbutton.h
CMFCButton::CleanUp
Resetuje zmienne wewnętrzne i zwalnia przydzielone zasoby, takie jak obrazy, mapy bitowe i ikony.
virtual void CleanUp();
CMFCButton::EnableFullTextTooltip
Określa, czy ma być wyświetlany pełny tekst etykietki narzędzia w dużym oknie etykietki narzędzia, czy obcięta wersja tekstu w małym oknie etykietki narzędzia.
void EnableFullTextTooltip(BOOL bOn=TRUE);
Parametry
bOn
[in] TRUE
aby wyświetlić cały tekst; FALSE
aby wyświetlić obcięty tekst.
Uwagi
CMFCButton::EnableMenuFont
Określa, czy czcionka tekstowa przycisku jest taka sama jak czcionka menu aplikacji.
void EnableMenuFont(
BOOL bOn=TRUE,
BOOL bRedraw=TRUE);
Parametry
bOn
[in] TRUE
aby użyć czcionki menu aplikacji jako czcionki tekstowej przycisku; FALSE
aby użyć czcionki systemowej. Wartość domyślna to TRUE
.
bRedraw
[in] TRUE
aby natychmiast ponownie narysować ekran; w przeciwnym razie, FALSE
. Wartość domyślna to TRUE
.
Uwagi
Jeśli nie używasz tej metody do określenia czcionki tekstowej przycisku, możesz określić czcionkę za pomocą CWnd::SetFont
metody . Jeśli w ogóle nie określisz czcionki, platforma ustawi czcionkę domyślną.
CMFCButton::EnableWindowsTheming
Określa, czy styl obramowania przycisku odpowiada bieżącemu motywowi systemu Windows.
static void EnableWindowsTheming(BOOL bEnable = TRUE);
Parametry
bEnable
[in] TRUE
aby użyć bieżącego motywu systemu Windows do rysowania obramowań przycisków; FALSE
aby nie używać motywu systemu Windows. Wartość domyślna to TRUE
.
Uwagi
Ta metoda ma wpływ na wszystkie przyciski w aplikacji, które pochodzą z CMFCButton
klasy .
CMFCButton::GetToolTipCtrl
Zwraca odwołanie do bazowej kontrolki etykietki narzędzia.
CToolTipCtrl& GetToolTipCtrl();
Wartość zwracana
Odwołanie do bazowej kontrolki etykietki narzędzia.
Uwagi
CMFCButton::IsAutoCheck
Wskazuje, czy pole wyboru, czy przycisk radiowy jest przyciskiem automatycznym.
BOOL IsAutoCheck() const;
Wartość zwracana
TRUE
jeśli przycisk ma styl BS_AUTOCHECKBOX
lub BS_AUTORADIOBUTTON
; w przeciwnym razie FALSE
.
Uwagi
CMFCButton::IsAutorepeatCommandMode
Wskazuje, czy przycisk jest ustawiony na tryb automatycznego powtarzania.
BOOL IsAutorepeatCommandMode() const;
Wartość zwracana
TRUE
jeśli przycisk jest ustawiony na tryb automatycznego powtarzania; w przeciwnym razie, FALSE
.
Uwagi
CMFCButton::SetAutorepeatMode
Użyj metody , aby ustawić przycisk w trybie automatycznego powtarzania.
CMFCButton::IsCheckBox
Wskazuje, czy przycisk jest przyciskiem pola wyboru.
BOOL IsCheckBox() const;
Wartość zwracana
TRUE
jeśli przycisk ma albo BS_CHECKBOX
BS_AUTOCHECKBOX
styl; w przeciwnym razie FALSE
.
Uwagi
CMFCButton::IsChecked
Wskazuje, czy bieżący przycisk jest zaznaczony.
BOOL IsChecked() const;
Wartość zwracana
TRUE
jeśli bieżący przycisk jest zaznaczony; w przeciwnym razie, FALSE
.
Uwagi
Platforma używa różnych sposobów wskazywania, że sprawdzane są różne rodzaje przycisków. Na przykład przycisk radiowy jest sprawdzany, gdy zawiera kropkę; pole wyboru jest zaznaczone, gdy zawiera element X
.
CMFCButton::IsHighlighted
Wskazuje, czy przycisk jest wyróżniony.
BOOL IsHighlighted() const;
Wartość zwracana
TRUE
jeśli przycisk jest wyróżniony; w przeciwnym razie, FALSE
.
Uwagi
Przycisk staje się wyróżniony po umieszczeniu wskaźnika myszy na przycisku.
CMFCButton::IsPressed
Wskazuje, czy przycisk jest wypychany i wyróżniony.
BOOL IsPressed() const;
Wartość zwracana
TRUE
jeśli przycisk jest naciśnięty; w przeciwnym razie, FALSE
.
Uwagi
CMFCButton::IsPushed
Wskazuje, czy przycisk jest wypychany.
BOOL IsPushed() const;
Wartość zwracana
TRUE
jeśli przycisk jest wypchnięty; w przeciwnym razie, FALSE
.
Uwagi
CMFCButton::IsRadioButton
Wskazuje, czy przycisk jest przyciskiem radiowym.
BOOL IsRadioButton() const;
Wartość zwracana
TRUE
jeśli styl przycisku to BS_RADIOBUTTON
lub BS_AUTORADIOBUTTON
; w przeciwnym razie FALSE
.
Uwagi
CMFCButton::IsWindowsThemingEnabled
Wskazuje, czy styl obramowania przycisku odpowiada bieżącemu motywowi systemu Windows.
static BOOL IsWindowsThemingEnabled();
Wartość zwracana
TRUE
jeśli styl obramowania przycisku odpowiada bieżącemu motywowi systemu Windows; w przeciwnym razie, FALSE
.
CMFCButton::m_bDontUseWinXPTheme
Określa, czy podczas rysowania przycisku mają być używane motywy systemu Windows XP.
BOOL m_bDontUseWinXPTheme;
CMFCButton::m_bDrawFocus
Wskazuje, czy narysować prostokąt fokusu wokół przycisku.
BOOL m_bDrawFocus;
Uwagi
Ustaw element członkowski m_bDrawFocus
, aby TRUE
określić, że struktura narysuje prostokąt fokusu wokół tekstu i obrazu przycisku, jeśli przycisk otrzyma fokus.
Konstruktor inicjuje CMFCButton
ten element członkowski na .TRUE
CMFCButton::m_bGrayDisabled
Gdy TRUE
parametr umożliwia narysowywanie wyłączonego przycisku jako wyszarygodzonego.
BOOL m_bGrayDisabled;
CMFCButton::m_bHighlightChecked
Wskazuje, czy można wyróżnić BS_CHECKBOX
przycisk stylu po umieszczeniu kursora na nim kursora.
BOOL m_bHighlightChecked;
Uwagi
Ustaw element członkowski m_bHighlightChecked
, aby TRUE
określić, że struktura będzie wyróżniać BS_CHECKBOX
przycisk -style po umieszczeniu kursora myszy na nim.
CMFCButton::m_bResponseOnButtonDown
Wskazuje, czy należy reagować na zdarzenia przycisku w dół.
BOOL m_bResponseOnButtonDown;
CMFCButton::m_bRightImage
Wskazuje, czy obraz ma być wyświetlany po prawej stronie przycisku.
BOOL m_bRightImage;
CMFCButton::m_bTopImage](#m_bTopImage)
Wskazuje, czy obraz znajduje się na górze przycisku.
BOOL m_bTopImage;
Uwagi
Ustaw element członkowski m_bRightImage
, aby TRUE
określić, że struktura będzie wyświetlać obraz przycisku po prawej stronie etykiety tekstowej przycisku.
CMFCButton::m_bTransparent
Wskazuje, czy przycisk jest przezroczysty.
BOOL m_bTransparent;
Uwagi
Ustaw element członkowski m_bTransparent
, aby TRUE
określić, że struktura sprawi, że przycisk będzie przezroczysty. Konstruktor inicjuje CMFCButton
ten element członkowski na .FALSE
CMFCButton::m_nAlignStyle
Określa wyrównanie tekstu przycisku.
AlignStyle m_nAlignStyle;
Uwagi
Użyj jednej z następujących CMFCButton::AlignStyle
wartości wyliczenia, aby określić wyrównanie tekstu przycisku:
Wartość | Opis |
---|---|
ALIGN_CENTER |
(Ustawienie domyślne) Wyrównuje tekst przycisku do środka przycisku. |
ALIGN_LEFT |
Wyrównuje tekst przycisku do lewej strony przycisku. |
ALIGN_RIGHT |
Wyrównuje tekst przycisku do prawej strony przycisku. |
Konstruktor inicjuje CMFCButton
ten element członkowski na .ALIGN_CENTER
CMFCButton::m_bWasDblClk
](#m_bWasDblClk)|
Wskazuje, czy zdarzenie ostatniego kliknięcia było dwukrotnym kliknięciem.|
BOOL m_bWasDblClk;
CMFCButton::m_nFlatStyle
Określa styl przycisku, na przykład bez obramowania, płaskie, półpłatne lub 3D.
FlatStyle m_nFlatStyle;
Uwagi
W poniższej tabeli wymieniono CMFCButton::m_nFlatStyle
wartości wyliczenia, które określają wygląd przycisku.
Wartość | Opis |
---|---|
BUTTONSTYLE_3D |
(Ustawienie domyślne) Przycisk wydaje się mieć wysokie, trójwymiarowe boki. Po kliknięciu przycisku zostanie wyświetlony przycisk, który zostanie przyciśnięty do głębokiego wcięcia. |
BUTTONSTYLE_FLAT |
Gdy mysz nie wstrzymuje przycisku, przycisk wydaje się być dwuwymiarowy i nie ma podniesionych boków. Gdy mysz wstrzymuje się nad przyciskiem, przycisk wydaje się mieć małe, trójwymiarowe boki. Po kliknięciu przycisku przycisk wydaje się być naciskany na płytkie wcięcie. |
BUTTONSTYLE_SEMIFLAT |
Przycisk wydaje się mieć małe, trójwymiarowe boki. Po kliknięciu przycisku zostanie wyświetlony przycisk, który zostanie przyciśnięty do głębokiego wcięcia. |
BUTTONSTYLE_NOBORDERS |
Przycisk nie ma podniesionych boków i zawsze pojawia się dwuwymiarowy. Po kliknięciu przycisku nie można nacisnąć wcięcie. |
Konstruktor inicjuje CMFCButton
ten element członkowski na .BUTTONSTYLE_3D
Przykład
W poniższym przykładzie pokazano, jak ustawić wartości zmiennej m_nFlatStyle
składowej w CMFCButton
klasie. Ten przykład jest częścią przykładu Nowe kontrolki.
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
Wywoływana przez strukturę w celu narysowania przycisku.
virtual void OnDraw(
CDC* pDC,
const CRect& rect,
UINT uiState);
Parametry
pDC
[in] Wskaźnik do kontekstu urządzenia.
rect
[in] Odwołanie do prostokąta powiązanego z przyciskiem .
uiState
[in] Bieżący stan przycisku. Aby uzyskać więcej informacji, zobacz itemState
element członkowski tematu DRAWITEMSTRUCT
Struktura .
Uwagi
Zastąpij tę metodę, aby użyć własnego kodu, aby narysować przycisk.
CMFCButton::OnDrawBorder
Wywoływana przez strukturę w celu narysowania obramowania przycisku.
virtual void OnDrawBorder(
CDC* pDC,
CRect& rectClient,
UINT uiState);
Parametry
pDC
[in] Wskaźnik do kontekstu urządzenia.
rectClient
[in] Odwołanie do prostokąta powiązanego z przyciskiem .
uiState
[in] Bieżący stan przycisku. Aby uzyskać więcej informacji, zobacz itemState
element członkowski tematu DRAWITEMSTRUCT
Struktura .
Uwagi
Zastąpij tę metodę, aby użyć własnego kodu w celu narysowania obramowania.
CMFCButton::OnDrawFocusRect
Wywoływana przez strukturę w celu narysowania prostokąta fokusu dla przycisku.
virtual void OnDrawFocusRect(
CDC* pDC,
const CRect& rectClient);
Parametry
pDC
[in] Wskaźnik do kontekstu urządzenia.
rectClient
[in] Odwołanie do prostokąta powiązanego z przyciskiem .
Uwagi
Zastąpij tę metodę, aby użyć własnego kodu, aby narysować prostokąt fokusu.
CMFCButton::OnDrawText
Wywoływana przez strukturę w celu narysowania tekstu przycisku.
virtual void OnDrawText(
CDC* pDC,
const CRect& rect,
const CString& strText,
UINT uiDTFlags,
UINT uiState);
Parametry
pDC
[in] Wskaźnik do kontekstu urządzenia.
rect
[in] Odwołanie do prostokąta powiązanego z przyciskiem .
strText
[in] Tekst do rysowania.
uiDTFlags
[in] Flagi określające sposób formatowania tekstu. Aby uzyskać więcej informacji, zobacz nFormat
parametr CDC::DrawText
metody .
uiState
[in] Zastrzeżony.
Uwagi
Zastąpij tę metodę, aby użyć własnego kodu, aby narysować tekst przycisku.
CMFCButton::OnFillBackground
Wywoływana przez strukturę w celu narysowania tła tekstu przycisku.
virtual void OnFillBackground(
CDC* pDC,
const CRect& rectClient);
Parametry
pDC
[in] Wskaźnik do kontekstu urządzenia.
rectClient
[in] Odwołanie do prostokąta powiązanego z przyciskiem .
Uwagi
Zastąpij tę metodę, aby użyć własnego kodu, aby narysować tło przycisku.
CMFCButton::SelectFont
Pobiera czcionkę skojarzona z określonym kontekstem urządzenia.
virtual CFont* SelectFont(CDC* pDC);
Parametry
pDC
[in] Wskaźnik do kontekstu urządzenia.
Wartość zwracana
Zastąpij tę metodę, aby użyć własnego kodu w celu pobrania czcionki.
Uwagi
CMFCButton::SetAutorepeatMode
Ustawia przycisk w trybie automatycznego powtarzania.
void SetAutorepeatMode(int nTimeDelay=500);
Parametry
nTimeDelay
[in] Nienegacyjny numer określający interwał między komunikatami wysyłanymi do okna nadrzędnego. Interwał jest mierzony w milisekundach, a jego wartość domyślna to 500 milisekund. Określ zero, aby wyłączyć tryb automatycznego powtarzania komunikatów.
Uwagi
Ta metoda powoduje, że przycisk stale wysyła WM_COMMAND
komunikaty do okna nadrzędnego do momentu zwolnienia przycisku lub nTimeDelay
parametr jest ustawiony na zero.
CMFCButton::SetCheckedImage
Ustawia obraz dla zaznaczonego przycisku.
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);
Parametry
hIcon
[in] Dojdź do ikony zawierającej mapę bitową i maskę dla nowego obrazu.
bAutoDestroy
[in] TRUE
aby określić, że zasoby mapy bitowej są niszczone automatycznie; w przeciwnym razie, FALSE
. Wartość domyślna to TRUE
.
hIconHot
[in] Dojmij do ikony zawierającej obraz dla wybranego stanu.
hBitmap
[in] Dojście do mapy bitowej zawierającej obraz dla nie wybranego stanu.
hBitmapHot
[in] Dojście do mapy bitowej zawierającej obraz dla wybranego stanu.
bMap3dColors
[in] Określa przezroczysty kolor tła przycisku; oznacza to, że twarz przycisku. TRUE
aby użyć wartości koloru RGB (192, 192, 192); FALSE
aby użyć wartości koloru zdefiniowanej przez AFX_GLOBAL_DATA::clrBtnFace
.
uiBmpResId
[in] Identyfikator zasobu dla obrazu, który nie został wybrany.
uiBmpHotResId
[in] Identyfikator zasobu dla wybranego obrazu.
hIconDisabled
[in] Dojmij do ikony wyłączonego obrazu.
hBitmapDisabled
[in] Dojście do mapy bitowej zawierającej wyłączony obraz.
uiBmpDsblResID
[in] Identyfikator zasobu wyłączonej mapy bitowej.
bAlphaBlend
[in] TRUE
używać tylko 32-bitowych obrazów korzystających z kanału alfa; FALSE
, aby nie używać tylko obrazów kanałów alfa. Wartość domyślna to FALSE
.
Uwagi
CMFCButton::SetFaceColor
Ustawia kolor tła tekstu przycisku.
void SetFaceColor(
COLORREF crFace,
BOOL bRedraw=TRUE);
Parametry
crFace
[in] Wartość koloru RGB.
bRedraw
[in] TRUE
aby od razu ponownie narysować ekran; w przeciwnym razie, FALSE
.
Uwagi
Użyj tej metody, aby zdefiniować nowy kolor wypełnienia dla tła przycisku (twarzy). Pamiętaj, że tło nie jest wypełnione, gdy zmienna CMFCButton::m_bTransparent
składowa to TRUE
.
CMFCButton::SetImage
Ustawia obraz przycisku.
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);
Parametry
hIcon
[in] Dojdź do ikony zawierającej mapę bitową i maskę dla nowego obrazu.
bAutoDestroy
[in] TRUE
aby określić, że zasoby mapy bitowej są niszczone automatycznie; w przeciwnym razie, FALSE
. Wartość domyślna to TRUE
.
hIconHot
[in] Dojmij do ikony zawierającej obraz dla wybranego stanu.
hBitmap
[in] Dojście do mapy bitowej zawierającej obraz dla nie wybranego stanu.
hBitmapHot
[in] Dojście do mapy bitowej zawierającej obraz dla wybranego stanu.
uiBmpResId
[in] Identyfikator zasobu dla obrazu, który nie został wybrany.
uiBmpHotResId
[in] Identyfikator zasobu dla wybranego obrazu.
bMap3dColors
[in] Określa przezroczysty kolor tła przycisku; oznacza to, że twarz przycisku. TRUE
aby użyć wartości koloru RGB (192, 192, 192); FALSE
aby użyć wartości koloru zdefiniowanej przez AFX_GLOBAL_DATA::clrBtnFace
.
hIconDisabled
[in] Dojmij do ikony wyłączonego obrazu.
hBitmapDisabled
[in] Dojście do mapy bitowej zawierającej wyłączony obraz.
uiBmpDsblResID
[in] Identyfikator zasobu wyłączonej mapy bitowej.
bAlphaBlend
[in] TRUE
używać tylko 32-bitowych obrazów korzystających z kanału alfa; FALSE
, aby nie używać tylko obrazów kanałów alfa. Wartość domyślna to FALSE
.
Uwagi
Przykład
W poniższym przykładzie pokazano, jak używać różnych wersji SetImage
metody w CMFCButton
klasie . Przykład jest częścią przykładu Nowe kontrolki.
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
Ustawia obraz kursora.
void SetMouseCursor(HCURSOR hcursor);
Parametry
hcursor
[in] Uchwyt kursora.
Uwagi
Użyj tej metody, aby skojarzyć obraz kursora, taki jak kursor dłoni, z przyciskiem . Kursor jest ładowany z zasobów aplikacji.
Przykład
W poniższym przykładzie pokazano, jak używać SetMouseCursor
metody w CMFCButton
klasie . Przykład jest częścią kodu w przykładzie Nowe kontrolki.
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
Ustawia kursor na obraz dłoni.
void SetMouseCursorHand();
Uwagi
Użyj tej metody, aby skojarzyć obraz kursora ręki z przyciskiem . Kursor jest ładowany z zasobów aplikacji.
CMFCButton::SetStdImage
CMenuImages
Używa obiektu do ustawiania obrazu przycisku.
void SetStdImage(
CMenuImages::IMAGES_IDS id,
CMenuImages::IMAGE_STATE state=CMenuImages::ImageBlack,
CMenuImages::IMAGES_IDS idDisabled=(CMenuImages::IMAGES_IDS)0);
Parametry
id
[in] Jeden z identyfikatorów obrazu przycisku zdefiniowanych w wyliczeniem CMenuImage::IMAGES_IDS
. Wartości obrazu określają obrazy, takie jak strzałki, pinezki i przyciski radiowe.
state
[in] Jeden z identyfikatorów stanu obrazu przycisku zdefiniowanych w wyliczeniem CMenuImages::IMAGE_STATE
. Stany obrazu określają kolory przycisków, takie jak, szary, jasnoszary, biały i ciemnoszary. Domyślna wartość to CMenuImages::ImageBlack
.
idDisabled
[in] Jeden z identyfikatorów obrazu przycisku zdefiniowanych w wyliczeniem CMenuImage::IMAGES_IDS
. Obraz wskazuje, że przycisk jest wyłączony. Wartość domyślna to pierwszy obraz przycisku ( CMenuImages::IdArrowDown
).
Uwagi
CMFCButton::SetTextColor
Ustawia kolor tekstu przycisku dla przycisku, który nie jest zaznaczony.
void SetTextColor(COLORREF clrText);
Parametry
clrText
[in] Wartość koloru RGB.
Uwagi
CMFCButton::SetTextHotColor
Ustawia kolor tekstu przycisku dla wybranego przycisku.
void SetTextHotColor(COLORREF clrTextHot);
Parametry
clrTextHot
[in] Wartość koloru RGB.
Uwagi
CMFCButton::SetTooltip
Kojarzy etykietkę narzędzia z przyciskiem.
void SetTooltip(LPCTSTR lpszToolTipText);
Parametry
lpszToolTipText
[in] Wskaźnik do tekstu etykietki narzędzia. Określ NULL
, aby wyłączyć etykietkę narzędzia.
Uwagi
CMFCButton::SizeToContent
Zmienia rozmiar przycisku, aby zawierał tekst i obraz przycisku.
virtual CSize SizeToContent(BOOL bCalcOnly=FALSE);
Parametry
bCalcOnly
[in] TRUE
aby obliczyć, ale nie zmienić, nowy rozmiar przycisku; FALSE
aby zmienić rozmiar przycisku. Wartość domyślna to FALSE
.
Wartość zwracana
CSize
Obiekt, który zawiera nowy rozmiar przycisku.
Uwagi
Domyślnie ta metoda oblicza nowy rozmiar, który zawiera margines poziomy 10 pikseli i pionowy margines 5 pikseli.
Zobacz też
Wykres hierarchii
Klasy
CMFCLinkCtrl
Klasa
CMFCColorButton
Klasa
CMFCMenuButton
Klasa