CMFCButton
Sınıf
sınıfı, CMFCButton
sınıfa CButton
düğme metnini hizalama, düğme metniyle görüntüyü birleştirme, imleç seçme ve araç ipucu belirtme gibi işlevler ekler.
class CMFCButton : public CButton
Veri Akışı Adı | Açıklama |
---|---|
CMFCButton::CMFCButton |
Varsayılan oluşturucu. |
CMFCButton::~CMFCButton |
Yıkıcı. |
Veri Akışı Adı | Açıklama |
---|---|
CMFCButton::CleanUp |
İç değişkenleri sıfırlar ve görüntüler, bit eşlemler ve simgeler gibi ayrılmış kaynakları serbestleştirir. |
CMFCButton::CreateObject |
Bu sınıf türünün dinamik bir örneğini oluşturmak için çerçeve tarafından kullanılır. |
CMFCButton::DrawItem |
Sahip tarafından çizilen bir düğmenin görsel bir yönü değiştiğinde çerçeve tarafından çağrılır. (Geçersiz Kılmalar CButton::DrawItem .) |
CMFCButton::EnableFullTextTooltip |
Büyük bir araç ipucu penceresinde bir araç ipucunun tam metninin mi yoksa küçük bir araç ipucu penceresinde metnin kesilmiş bir sürümünün mü görüntüleneceğini belirtir. |
CMFCButton::EnableMenuFont |
Düğme metni yazı tipinin uygulama menüsü yazı tipiyle aynı olup olmadığını belirtir. |
CMFCButton::EnableWindowsTheming |
Düğme kenarlık stilinin geçerli Windows temasına karşılık gelip karşılık gelmeyeceğini belirtir. |
CMFCButton::GetThisClass |
Çerçeve tarafından, bu sınıf türüyle ilişkili nesneye CRuntimeClass bir işaretçi almak için kullanılır. |
CMFCButton::GetToolTipCtrl |
Temel araç ipucu denetimine bir başvuru döndürür. |
CMFCButton::IsAutoCheck |
Onay kutusunun veya radyo düğmesinin otomatik düğme olup olmadığını gösterir. |
CMFCButton::IsAutorepeatCommandMode |
Düğmenin otomatik yineleme moduna ayarlanıp ayarlanmadığını gösterir. |
CMFCButton::IsCheckBox |
Düğmenin onay kutusu düğmesi olup olmadığını gösterir. |
CMFCButton::IsChecked |
Geçerli düğmenin işaretli olup olmadığını gösterir. |
CMFCButton::IsHighlighted |
Düğmenin vurgulanıp vurgulu olmadığını gösterir. |
CMFCButton::IsPressed |
Düğmenin gönderilip gönderilmediğini ve vurgulanıp vurgulu olmadığını gösterir. |
CMFCButton::IsPushed |
Bir düğmenin gönderilip gönderilmediğini gösterir. |
CMFCButton::IsRadioButton |
Düğmenin radyo düğmesi olup olmadığını gösterir. |
CMFCButton::IsWindowsThemingEnabled |
Düğme kenarlık stilinin geçerli Windows temasına karşılık gelen olup olmadığını gösterir. |
CMFCButton::OnDrawParentBackground |
Bir düğmenin üst öğesinin arka planını belirtilen alana çizer. (Geçersiz Kılmalar AFX_GLOBAL_DATA::DrawParentBackground |
CMFCButton::PreTranslateMessage |
Pencere iletilerini ve DispatchMessage Windows işlevlerine TranslateMessage göndermeden önce çevirir. (Geçersiz Kılmalar CWnd::PreTranslateMessage .) |
CMFCButton::SetAutorepeatMode |
Otomatik yineleme moduna bir düğme ayarlar. |
CMFCButton::SetCheckedImage |
İşaretli düğmenin görüntüsünü ayarlar. |
CMFCButton::SetFaceColor |
Düğme metni için arka plan rengini ayarlar. |
CMFCButton::SetImage |
Düğmenin görüntüsünü ayarlar. |
CMFCButton::SetMouseCursor |
İmleç görüntüsünü ayarlar. |
CMFCButton::SetMouseCursorHand |
İmleci bir elin görüntüsüne ayarlar. |
CMFCButton::SetStdImage |
Düğme görüntüsünü ayarlamak için bir CMenuImages nesne kullanır. |
CMFCButton::SetTextColor |
Seçili olmayan bir düğme için düğme metninin rengini ayarlar. |
CMFCButton::SetTextHotColor |
Seçili bir düğme için düğme metninin rengini ayarlar. |
CMFCButton::SetTooltip |
Araç ipucuyla düğmeyi ilişkilendirir. |
CMFCButton::SizeToContent |
Düğme metnini ve görüntüsünü içerecek şekilde düğmeyi yeniden boyutlandırıyor. |
Veri Akışı Adı | Açıklama |
---|---|
CMFCButton::OnDraw |
Bir düğme çizmek için çerçeve tarafından çağrılır. |
CMFCButton::OnDrawBorder |
Bir düğmenin kenarını çizmek için çerçeve tarafından çağrılır. |
CMFCButton::OnDrawFocusRect |
Bir düğmenin odak dikdörtgenini çizmek için çerçeve tarafından çağrılır. |
CMFCButton::OnDrawText |
Düğme metnini çizmek için çerçeve tarafından çağrılır. |
CMFCButton::OnFillBackground |
Düğme metninin arka planını çizmek için çerçeve tarafından çağrılır. |
CMFCButton::SelectFont |
Belirtilen cihaz bağlamıyla ilişkili yazı tipini alır. |
Veri Akışı Adı | Açıklama |
---|---|
CMFCButton::m_nAlignStyle |
Düğme metninin hizalamasını belirtir. |
CMFCButton::m_bDontUseWinXPTheme |
Windows XP temalarının kullanılıp kullanılmayacağını belirtir. |
CMFCButton::m_bDrawFocus |
Bir düğmenin çevresine odak dikdörtgeni çizilip çizmeyeceğini gösterir. |
CMFCButton::m_nFlatStyle |
Düğmenin kenarlıksız, düz, yarı düz veya 3B gibi stilini belirtir. |
CMFCButton::m_bGrayDisabled |
TRUE olduğunda, devre dışı bırakılmış bir düğmenin gri olarak çizilmesine olanak tanır. |
CMFCButton::m_bHighlightChecked |
İmleç üzerine geldiğinde BS_CHECKBOX stilindeki bir düğmenin vurgulanıp vurgulanmayacağını gösterir. |
CMFCButton::m_bResponseOnButtonDown |
Düğme aşağı etkinliklerine yanıt verilip verilmeyeceğini gösterir. |
CMFCButton::m_bRightImage |
Düğmenin sağ tarafında görüntü görüntülenip görüntülenmeyeceğini gösterir. |
CMFCButton::m_bTopImage |
Resmin düğmenin üstünde olup olmadığını gösterir. |
CMFCButton::m_bTransparent |
Düğmenin saydam olup olmadığını gösterir. |
CMFCButton::m_bWasDblClk |
Son tıklama olayının çift tıklama olup olmadığını gösterir. |
Köprüleri destekleyen sınıfı ve renk seçici iletişim kutusunu destekleyen sınıfı gibi CMFCURLLinkButton
diğer düğme türleri sınıfından CMFCColorButton
türetilirCMFCButton
.
Nesnenin CMFCButton
stili , flat
semi-flat
veya no border
olabilir3D
. Düğme metni bir düğmenin soluna, üstüne veya ortasına hizalanabilir. Çalışma zamanında düğmenin metin, resim veya metin ile resim görüntüleyip görüntülemediğini denetleyebilirsiniz. İmleç bir düğmenin üzerine geldiğinde belirli bir imleç görüntüsünün görüntüleneceğini de belirtebilirsiniz.
Doğrudan kodunuzda veya MFC Sınıf Sihirbazı aracını ve bir iletişim kutusu şablonunu kullanarak bir düğme denetimi oluşturun. Doğrudan bir düğme denetimi oluşturursanız, uygulamanıza bir CMFCButton
değişken ekleyin ve nesnenin oluşturucusunu ve Create
yöntemlerini çağırın CMFCButton
. MFC Sınıf Sihirbazı'nı kullanıyorsanız, uygulamanıza bir CButton
değişken ekleyin ve değişkenin türünü olarak CButton
CMFCButton
değiştirin.
İletişim kutusu uygulamasındaki bildirim iletilerini işlemek için, her bildirim için bir ileti eşleme girdisi ve olay işleyicisi ekleyin. Bir nesne tarafından gönderilen bildirimler, bir CMFCButton
nesne tarafından gönderilen bildirimlerle CButton
aynıdır.
Aşağıdaki örnek, sınıftaki çeşitli yöntemleri kullanarak düğmenin özelliklerini yapılandırmayı CMFCButton
gösterir. Örnek, Yeni Denetimler örneğinin bir parçasıdır.
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!"));
Üstbilgi: afxbutton.h
İç değişkenleri sıfırlar ve görüntüler, bit eşlemler ve simgeler gibi ayrılmış kaynakları serbestleştirir.
virtual void CleanUp();
Büyük bir araç ipucu penceresinde bir araç ipucunun tam metninin mi yoksa küçük bir araç ipucu penceresinde metnin kesilmiş bir sürümünün mü görüntüleneceğini belirtir.
void EnableFullTextTooltip(BOOL bOn=TRUE);
bOn
[in] TRUE
metnin tamamını görüntülemek için; FALSE
kırpılmış metni görüntülemek için.
Düğme metni yazı tipinin uygulama menüsü yazı tipiyle aynı olup olmadığını belirtir.
void EnableMenuFont(
BOOL bOn=TRUE,
BOOL bRedraw=TRUE);
bOn
[in] TRUE
düğme metin yazı tipi olarak uygulama menüsü yazı tipini kullanmak için; FALSE
sistem yazı tipini kullanmak için. Varsayılan değer: TRUE
.
bRedraw
[in] TRUE
ekranı hemen yeniden çizmek için; aksi takdirde , FALSE
. Varsayılan değer: TRUE
.
Düğme metni yazı tipini belirtmek için bu yöntemi kullanmıyorsanız, yazı tipini yöntemiyle CWnd::SetFont
belirtebilirsiniz. Hiç yazı tipi belirtmezseniz, çerçeve varsayılan yazı tipini ayarlar.
Düğme kenarlık stilinin geçerli Windows temasına karşılık gelip karşılık gelmeyeceğini belirtir.
static void EnableWindowsTheming(BOOL bEnable = TRUE);
bEnable
[in] TRUE
düğme kenarlıkları çizmek için geçerli Windows temasını kullanmak; FALSE
windows temasını kullanmamak için. Varsayılan değer: TRUE
.
Bu yöntem, uygulamanızdaki sınıfından türetilen CMFCButton
tüm düğmeleri etkiler.
Temel araç ipucu denetimine bir başvuru döndürür.
CToolTipCtrl& GetToolTipCtrl();
Temel araç ipucu denetimine başvuru.
Onay kutusunun veya radyo düğmesinin otomatik düğme olup olmadığını gösterir.
BOOL IsAutoCheck() const;
TRUE
düğmenin stili BS_AUTOCHECKBOX
varsa veya BS_AUTORADIOBUTTON
değilse, FALSE
.
Düğmenin otomatik yineleme moduna ayarlanıp ayarlanmadığını gösterir.
BOOL IsAutorepeatCommandMode() const;
TRUE
düğme otomatik yineleme moduna ayarlandıysa; aksi takdirde , FALSE
.
CMFCButton::SetAutorepeatMode
Otomatik yineleme moduna bir düğme ayarlamak için yöntemini kullanın.
Düğmenin onay kutusu düğmesi olup olmadığını gösterir.
BOOL IsCheckBox() const;
TRUE
düğmeden biri BS_CHECKBOX
veya BS_AUTOCHECKBOX
stili varsa; değilse, FALSE
.
Geçerli düğmenin işaretli olup olmadığını gösterir.
BOOL IsChecked() const;
TRUE
geçerli düğme işaretliyse; aksi takdirde , FALSE
.
Çerçeve, farklı düğme türlerinin denetlendiğini belirtmek için farklı yollar kullanır. Örneğin, bir radyo düğmesi nokta içerdiğinde denetlenirken; bir onay kutusu içerdiğinde X
işaretlenir.
Düğmenin vurgulanıp vurgulu olmadığını gösterir.
BOOL IsHighlighted() const;
TRUE
düğme vurgulanmışsa; aksi takdirde , FALSE
.
Fare düğmenin üzerine geldiğinde düğme vurgulanır.
Düğmenin gönderilip gönderilmediğini ve vurgulanıp vurgulu olmadığını gösterir.
BOOL IsPressed() const;
TRUE
düğmeye basıldığında; aksi takdirde , FALSE
.
Bir düğmenin gönderilip gönderilmediğini gösterir.
BOOL IsPushed() const;
TRUE
düğmeye basıldığında; aksi takdirde , FALSE
.
Düğmenin radyo düğmesi olup olmadığını gösterir.
BOOL IsRadioButton() const;
TRUE
düğme stili BS_RADIOBUTTON
veya BS_AUTORADIOBUTTON
ise; değilse, FALSE
.
Düğme kenarlık stilinin geçerli Windows temasına karşılık gelen olup olmadığını gösterir.
static BOOL IsWindowsThemingEnabled();
TRUE
düğme kenarlarının stili geçerli Windows temasına karşılık geliyorsa; aksi takdirde , FALSE
.
Düğmeyi çizerken Windows XP temalarının kullanılıp kullanılmayacağını belirtir.
BOOL m_bDontUseWinXPTheme;
Bir düğmenin çevresine odak dikdörtgeni çizilip çizmeyeceğini gösterir.
BOOL m_bDrawFocus;
m_bDrawFocus
Düğme odağı alırsa, çerçevenin düğme metninin ve görüntüsünün çevresine bir odak dikdörtgeni çizeceğini belirtmek için üyeyi TRUE
olarak ayarlayın.
Oluşturucu bu CMFCButton
üyeyi olarak TRUE
başlatır.
olduğunda TRUE
, devre dışı bırakılmış bir düğmenin gri olarak çizilmesine olanak tanır.
BOOL m_bGrayDisabled;
İmleç üzerine geldiğinde bir -style düğmesinin vurgulanıp vurgulanmayacağını BS_CHECKBOX
gösterir.
BOOL m_bHighlightChecked;
m_bHighlightChecked
Fare üzerine geldiğinde çerçevenin bir BS_CHECKBOX
-style düğmesini vurgulayacak şekilde üyeyi TRUE
olarak ayarlayın.
Düğme aşağı etkinliklerine yanıt verilip verilmeyeceğini gösterir.
BOOL m_bResponseOnButtonDown;
Düğmenin sağ tarafında görüntü görüntülenip görüntülenmeyeceğini gösterir.
BOOL m_bRightImage;
Resmin düğmenin üstünde olup olmadığını gösterir.
BOOL m_bTopImage;
Çerçevenin m_bRightImage
düğmenin metin etiketinin sağındaki düğmenin görüntüsünü görüntüleneceğini belirtmek için üyeyi TRUE
olarak ayarlayın.
Düğmenin saydam olup olmadığını gösterir.
BOOL m_bTransparent;
Çerçevenin düğmeyi m_bTransparent
saydam hale getireceğini belirtmek için TRUE
üyeyi olarak ayarlayın. Oluşturucu bu CMFCButton
üyeyi olarak FALSE
başlatır.
Düğme metninin hizalamasını belirtir.
AlignStyle m_nAlignStyle;
Düğme metninin hizalamasını belirtmek için aşağıdaki CMFCButton::AlignStyle
numaralandırma değerlerinden birini kullanın:
Value | Açıklama |
---|---|
ALIGN_CENTER |
(Varsayılan) Düğme metnini düğmenin ortasına hizalar. |
ALIGN_LEFT |
Düğme metnini düğmenin sol tarafına hizalar. |
ALIGN_RIGHT |
Düğme metnini düğmenin sağ tarafına hizalar. |
Oluşturucu bu CMFCButton
üyeyi olarak ALIGN_CENTER
başlatır.
Son tıklama olayının çift tıklama olup olmadığını gösterir.|
BOOL m_bWasDblClk;
Düğmenin kenarlıksız, düz, yarı düz veya 3B gibi stilini belirtir.
FlatStyle m_nFlatStyle;
Aşağıdaki tabloda, bir düğmenin CMFCButton::m_nFlatStyle
görünümünü belirten numaralandırma değerleri listelemektedir.
Value | Açıklama |
---|---|
BUTTONSTYLE_3D |
(Varsayılan) Düğmenin yüksek, üç boyutlu kenarları var gibi görünüyor. Düğmeye tıklandığında, düğme derin bir girintiye basılmış gibi görünür. |
BUTTONSTYLE_FLAT |
Fare düğmenin üzerinde duraklatılmadığında, düğme iki boyutlu gibi görünür ve yükseltilmiş kenarları yoktur. Fare düğmenin üzerinde durakladığında düğmenin düşük, üç boyutlu kenarları var gibi görünür. Düğmeye tıklandığında, düğmeye sığ bir girintiye basılmış gibi görünür. |
BUTTONSTYLE_SEMIFLAT |
Düğmenin düşük, üç boyutlu kenarları var gibi görünüyor. Düğmeye tıklandığında, düğme derin bir girintiye basılmış gibi görünür. |
BUTTONSTYLE_NOBORDERS |
Düğmenin kenarları yükseltilmiş değildir ve her zaman iki boyutlu görünür. Düğmeye tıklandığında girintiye basılmış gibi görünmüyor. |
Oluşturucu bu CMFCButton
üyeyi olarak BUTTONSTYLE_3D
başlatır.
Aşağıdaki örnekte, sınıfındaki üye değişkeninin değerlerinin m_nFlatStyle
nasıl ayarlanacağı gösterilmektedir CMFCButton
. Bu örnek, Yeni Denetimler örneğinin bir parçasıdır.
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;
}
Bir düğme çizmek için çerçeve tarafından çağrılır.
virtual void OnDraw(
CDC* pDC,
const CRect& rect,
UINT uiState);
pDC
[in] Cihaz bağlamı işaretçisi.
rect
[in] Düğmeyi sınırlayan bir dikdörtgen başvurusu.
uiState
[in] Geçerli düğme durumu. Daha fazla bilgi için Yapı konusunun üyesine DRAWITEMSTRUCT
bakınitemState
.
Bir düğme çizmek için kendi kodunuzu kullanmak için bu yöntemi geçersiz kılın.
Bir düğmenin kenarını çizmek için çerçeve tarafından çağrılır.
virtual void OnDrawBorder(
CDC* pDC,
CRect& rectClient,
UINT uiState);
pDC
[in] Cihaz bağlamı işaretçisi.
rectClient
[in] Düğmeyi sınırlayan bir dikdörtgen başvurusu.
uiState
[in] Geçerli düğme durumu. Daha fazla bilgi için Yapı konusunun üyesine DRAWITEMSTRUCT
bakınitemState
.
Sınırı çizmek için kendi kodunuzu kullanmak için bu yöntemi geçersiz kılın.
Bir düğmenin odak dikdörtgenini çizmek için çerçeve tarafından çağrılır.
virtual void OnDrawFocusRect(
CDC* pDC,
const CRect& rectClient);
pDC
[in] Cihaz bağlamı işaretçisi.
rectClient
[in] Düğmeyi sınırlayan bir dikdörtgen başvurusu.
Odak dikdörtgenini çizmek için kendi kodunuzu kullanmak için bu yöntemi geçersiz kılın.
Düğme metnini çizmek için çerçeve tarafından çağrılır.
virtual void OnDrawText(
CDC* pDC,
const CRect& rect,
const CString& strText,
UINT uiDTFlags,
UINT uiState);
pDC
[in] Cihaz bağlamı işaretçisi.
rect
[in] Düğmeyi sınırlayan bir dikdörtgen başvurusu.
strText
[in] Çizecek metin.
uiDTFlags
[in] Metnin nasıl biçimlendirileceğini belirten bayraklar. Daha fazla bilgi için yönteminin nFormat
parametresine CDC::DrawText
bakın.
uiState
[in] Ayrılmış.
Düğme metnini çizmek için kendi kodunuzu kullanmak için bu yöntemi geçersiz kılın.
Düğme metninin arka planını çizmek için çerçeve tarafından çağrılır.
virtual void OnFillBackground(
CDC* pDC,
const CRect& rectClient);
pDC
[in] Cihaz bağlamı işaretçisi.
rectClient
[in] Düğmeyi sınırlayan bir dikdörtgen başvurusu.
Bir düğmenin arka planını çizmek için kendi kodunuzu kullanmak için bu yöntemi geçersiz kılın.
Belirtilen cihaz bağlamıyla ilişkili yazı tipini alır.
virtual CFont* SelectFont(CDC* pDC);
pDC
[in] Cihaz bağlamı işaretçisi.
Yazı tipini almak için kendi kodunuzu kullanmak için bu yöntemi geçersiz kılın.
Otomatik yineleme moduna bir düğme ayarlar.
void SetAutorepeatMode(int nTimeDelay=500);
nTimeDelay
[in] Üst pencereye gönderilen iletiler arasındaki aralığı belirten zorunlu olmayan bir sayı. Aralık milisaniye cinsinden ölçülür ve varsayılan değeri 500 milisaniyedir. İleti modunu otomatik yinelemeyi devre dışı bırakmak için sıfır belirtin.
Bu yöntem, düğme serbest bırakılana veya parametre sıfıra ayarlanana kadar düğmenin nTimeDelay
sürekli olarak üst pencereye ileti göndermesine WM_COMMAND
neden olur.
İşaretli düğmenin görüntüsünü ayarlar.
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);
hIcon
[in] Yeni görüntünün bit eşlemini ve maskesini içeren simgenin tutamacı.
bAutoDestroy
[in] TRUE
bit eşlem kaynaklarının otomatik olarak yok edildiğini belirtmek için; aksi takdirde , FALSE
. Varsayılan değer: TRUE
.
hIconHot
[in] Seçili duruma ilişkin görüntüyü içeren simgenin tutamacı.
hBitmap
[in] Seçili olmayan duruma ilişkin görüntüyü içeren bit eşlem tutamacı.
hBitmapHot
[in] Seçili duruma ilişkin görüntüyü içeren bit eşlem tutamacı.
bMap3dColors
[in] Düğme arka planı için saydam bir renk belirtir; yani düğmenin yüzü. TRUE
RGB(192, 192, 192) renk değerini kullanmak için; FALSE
tarafından AFX_GLOBAL_DATA::clrBtnFace
tanımlanan renk değerini kullanmak için.
uiBmpResId
[in] Seçili olmayan görüntünün kaynak kimliği.
uiBmpHotResId
[in] Seçili görüntünün kaynak kimliği.
hIconDisabled
[in] Devre dışı bırakılmış görüntünün simgesine tutamacı.
hBitmapDisabled
[in] Devre dışı bırakılmış görüntüyü içeren bit eşlem tutamacı.
uiBmpDsblResID
[in] Devre dışı bırakılan bit eşlemin kaynak kimliği.
bAlphaBlend
[in] TRUE
yalnızca alfa kanalını kullanan 32 bit görüntüleri kullanmak için; FALSE
, yalnızca alfa kanalı görüntülerini kullanmaz. Varsayılan değer: FALSE
.
Düğme metni için arka plan rengini ayarlar.
void SetFaceColor(
COLORREF crFace,
BOOL bRedraw=TRUE);
crFace
[in] RGB renk değeri.
bRedraw
[in] TRUE
ekranı hemen yeniden çizmek için; aksi takdirde , FALSE
.
Düğme arka planı (yüz) için yeni bir dolgu rengi tanımlamak için bu yöntemi kullanın. Üye değişkeni TRUE
olduğunda arka planının CMFCButton::m_bTransparent
doldurulmadığını unutmayın.
Düğmenin görüntüsünü ayarlar.
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);
hIcon
[in] Yeni görüntünün bit eşlemini ve maskesini içeren simgenin tutamacı.
bAutoDestroy
[in] TRUE
bit eşlem kaynaklarının otomatik olarak yok edildiğini belirtmek için; aksi takdirde , FALSE
. Varsayılan değer: TRUE
.
hIconHot
[in] Seçili duruma ilişkin görüntüyü içeren simgenin tutamacı.
hBitmap
[in] Seçili olmayan duruma ilişkin görüntüyü içeren bit eşlem tutamacı.
hBitmapHot
[in] Seçili duruma ilişkin görüntüyü içeren bit eşlem tutamacı.
uiBmpResId
[in] Seçili olmayan görüntünün kaynak kimliği.
uiBmpHotResId
[in] Seçili görüntünün kaynak kimliği.
bMap3dColors
[in] Düğme arka planı için saydam bir renk belirtir; yani düğmenin yüzü. TRUE
RGB(192, 192, 192) renk değerini kullanmak için; FALSE
tarafından AFX_GLOBAL_DATA::clrBtnFace
tanımlanan renk değerini kullanmak için.
hIconDisabled
[in] Devre dışı bırakılmış görüntünün simgesine tutamacı.
hBitmapDisabled
[in] Devre dışı bırakılmış görüntüyü içeren bit eşlem tutamacı.
uiBmpDsblResID
[in] Devre dışı bırakılan bit eşlemin kaynak kimliği.
bAlphaBlend
[in] TRUE
yalnızca alfa kanalını kullanan 32 bit görüntüleri kullanmak için; FALSE
, yalnızca alfa kanalı görüntülerini kullanmaz. Varsayılan değer: FALSE
.
Aşağıdaki örnekte, sınıfta yönteminin SetImage
çeşitli sürümlerinin nasıl kullanılacağı gösterilmektedir CMFCButton
. Örnek, Yeni Denetimler örneğinin bir parçasıdır.
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);
}
İmleç görüntüsünü ayarlar.
void SetMouseCursor(HCURSOR hcursor);
hcursor
[in] İmlecin tutamacı.
El imleci gibi bir imleç görüntüsünü düğmeyle ilişkilendirmek için bu yöntemi kullanın. İmleç uygulama kaynaklarından yüklenir.
Aşağıdaki örnekte sınıfında yönteminin SetMouseCursor
nasıl kullanılacağı gösterilmektedir CMFCButton
. Örnek, Yeni Denetimler örneğindeki kodun bir parçasıdır.
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;
}
}
İmleci bir elin görüntüsüne ayarlar.
void SetMouseCursorHand();
Bir elin imleç görüntüsünü düğmeyle ilişkilendirmek için bu yöntemi kullanın. İmleç uygulama kaynaklarından yüklenir.
Düğme görüntüsünü ayarlamak için bir CMenuImages
nesne kullanır.
void SetStdImage(
CMenuImages::IMAGES_IDS id,
CMenuImages::IMAGE_STATE state=CMenuImages::ImageBlack,
CMenuImages::IMAGES_IDS idDisabled=(CMenuImages::IMAGES_IDS)0);
id
[in] Numaralandırmada tanımlanan CMenuImage::IMAGES_IDS
düğme görüntüsü tanımlayıcılarından biri. Görüntü değerleri oklar, raptiyeler ve radyo düğmeleri gibi görüntüleri belirtir.
state
[in] Numaralandırmada tanımlanan CMenuImages::IMAGE_STATE
düğme görüntüsü durum tanımlayıcılarından biri. Görüntü durumları siyah, gri, açık gri, beyaz ve koyu gri gibi düğme renklerini belirtir. Varsayılan değer şudur: CMenuImages::ImageBlack
.
idDisabled
[in] Numaralandırmada tanımlanan CMenuImage::IMAGES_IDS
düğme görüntüsü tanımlayıcılarından biri. Görüntü, düğmenin devre dışı bırakıldığını gösterir. Varsayılan değer, ilk düğme resmidir ( CMenuImages::IdArrowDown
).
Seçili olmayan bir düğme için düğme metninin rengini ayarlar.
void SetTextColor(COLORREF clrText);
clrText
[in] RGB renk değeri.
Seçili bir düğme için düğme metninin rengini ayarlar.
void SetTextHotColor(COLORREF clrTextHot);
clrTextHot
[in] RGB renk değeri.
Araç ipucuyla düğmeyi ilişkilendirir.
void SetTooltip(LPCTSTR lpszToolTipText);
lpszToolTipText
[in] Araç ipucu metninin işaretçisi. Araç ipucunun devre dışı bırakılacağını belirtin NULL
.
Düğme metnini ve görüntüsünü içerecek şekilde düğmeyi yeniden boyutlandırıyor.
virtual CSize SizeToContent(BOOL bCalcOnly=FALSE);
bCalcOnly
[in] TRUE
düğmenin yeni boyutunu hesaplamak, ancak değiştirmek değil; FALSE
düğmesinin boyutunu değiştirmek için. Varsayılan değer: FALSE
.
CSize
Düğmenin yeni boyutunu içeren bir nesne.
Varsayılan olarak, bu yöntem 10 piksel yatay kenar boşluğu ve 5 piksel dikey kenar boşluğu içeren yeni bir boyut hesaplar.
Hiyerarşi Grafiği
Sınıflar
CMFCLinkCtrl
Sınıf
CMFCColorButton
Sınıf
CMFCMenuButton
Sınıf