Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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łania 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 TRUE parametr umożliwia narysowywanie wyłączonego przycisku jako wyszarygodzonego. |
CMFCButton::m_bHighlightChecked |
Wskazuje, czy można wyróżnić BS_CHECKBOX przycisk stylu 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.
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.
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
.
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
.
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
.
CMFCButton::IsPushed
Wskazuje, czy przycisk jest wypychany.
BOOL IsPushed() const;
Wartość zwracana
TRUE
jeśli przycisk jest wypchnięty; w przeciwnym razie, FALSE
.
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
.
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
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
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.
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
.
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
.
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
).
CMFCButton::SetTextColor
Ustawia kolor tekstu przycisku dla przycisku, który nie jest zaznaczony.
void SetTextColor(COLORREF clrText);
Parametry
clrText
[in] Wartość koloru RGB.
CMFCButton::SetTextHotColor
Ustawia kolor tekstu przycisku dla wybranego przycisku.
void SetTextHotColor(COLORREF clrTextHot);
Parametry
clrTextHot
[in] Wartość koloru RGB.
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.
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