CMFCMenuButton Sınıfı
Kullanıcının menü seçimlerinde açılan menüyü ve raporları görüntüleyen düğme.
Sözdizimi
class CMFCMenuButton : public CMFCButton
Üyeler
Ortak Oluşturucular
Veri Akışı Adı | Açıklama |
---|---|
CMFCMenuButton::CMFCMenuButton | Bir CMFCMenuButton nesne oluşturur. |
Genel Yöntemler
Veri Akışı Adı | Açıklama |
---|---|
CMFCMenuButton::P reTranslateMessage | Pencere iletilerini göndermeden önce çevirmek için çerçeve tarafından çağrılır. (Geçersiz Kılmalar CMFCButton::PreTranslateMessage .) |
CMFCMenuButton::SizeToContent | Düğmenin boyutunu metnine ve resim boyutuna göre değiştirir. |
Veri Üyeleri
Veri Akışı Adı | Açıklama |
---|---|
CMFCMenuButton::m_bOSMenu | Varsayılan sistem açılır menüsünün görüntüleneceğini veya CContextMenuManager::TrackPopupMenu kullanılıp kullanılmayacağını belirtir. |
CMFCMenuButton::m_bRightArrow | Açılır menünün düğmenin altında mı yoksa sağda mı görüneceğini belirtir. |
CMFCMenuButton::m_bStayPressed | Kullanıcı düğmeyi serbest bırakdıktan sonra menü düğmesinin durumunu değiştirip değiştirmediğini belirtir. |
CMFCMenuButton::m_hMenu | Ekli Windows menüsünün tutamacı. |
CMFCMenuButton::m_nMenuResult | Kullanıcının açılır menüden hangi öğeyi seçtiğini gösteren tanımlayıcı. |
CMFCMenuButton::m_bDefaultClick | Varsayılan (düğme metni/görüntüsünde) işlemeye izin verir. |
Açıklamalar
CMFCMenuButton
sınıfı, CButton Sınıfından türetilen CMFCButton Sınıfından türetilir. Bu nedenle, kodunuzda kullandığınız gibi kullanabilirsiniz CMFCMenuButton
CButton
.
Oluşturduğunuzda CMFCMenuButton
, ilişkili açılır menüye bir tanıtıcı geçirmeniz gerekir. Ardından işlevini CMFCMenuButton::SizeToContent
çağırın. CMFCMenuButton::SizeToContent
düğme boyutunun, düğmenin altında veya sağındaki açılır pencerenin görüntülendiği konuma işaret eden bir ok eklemek için yeterli olduğunu denetler.
Örnek
Aşağıdaki örnekte düğmeye eklenen menünün tutamacının nasıl ayarlanacağı, düğmenin metnine ve görüntü boyutuna göre nasıl yeniden boyutlandırılıp çerçeve tarafından görüntülenen açılır menünün nasıl ayarlanacağı gösterilmektedir. Bu kod parçacığı, Yeni Denetimler örneğinin bir parçasıdır.
CMFCMenuButton m_btnMenu;
// CMenu m_menu
m_btnMenu.m_hMenu = m_menu.GetSubMenu(0)->GetSafeHmenu();
m_btnMenu.SizeToContent();
// set to FALSE so that the framework calls CContextMenuManager::TrackPopupMenu
// to display its menu
m_btnMenu.m_bOSMenu = FALSE;
Devralma Hiyerarşisi
Gereksinimler
Üst bilgi: afxmenubutton.h
CMFCMenuButton::CMFCMenuButton
Yeni bir CMFCMenuButton nesnesi oluşturur.
CMFCMenuButton();
CMFCMenuButton::m_bOSMenu
Çerçevenin hangi açılır menüyü görüntülediğini gösteren Boole üye değişkeni.
BOOL m_bOSMenu;
Açıklamalar
TRUE ise m_bOSMenu
, çerçeve bu nesne için devralınan TrackPopupMenu
yöntemi çağırır. Aksi takdirde, çerçeve CContextMenuManager::TrackPopupMenu öğesini çağırır.
CMFCMenuButton::m_bRightArrow
Açılır menünün konumunu gösteren boole üye değişkeni.
BOOL m_bRightArrow;
Açıklamalar
Kullanıcı menü düğmesine bastığında, uygulama bir açılır menü gösterir. Çerçeve, düğmenin altında veya sağındaki açılır menüyü görüntüler. Düğme, açılır menünün nerede görüneceğini gösteren küçük bir oka da sahiptir. TRUE ise m_bRightArrow
, çerçeve düğmenin sağındaki açılır menüyü görüntüler. Aksi takdirde, düğmenin altındaki açılır menüyü görüntüler.
CMFCMenuButton::m_bStayPressed
Kullanıcı açılır menüden seçim yaparken menü düğmesine basılıp basılmadığını gösteren Boole üye değişkeni.
BOOL m_bStayPressed;
Açıklamalar
m_bStayPressed
Üye YANLIŞ ise, kullanımlar düğmeye tıkladığında menü düğmesine basılmaz. Bu durumda, çerçeve yalnızca açılır menüyü görüntüler.
m_bStayPressed
Üye TRUE ise, kullanıcı düğmeye tıkladığında menü düğmesine basılır. Kullanıcı bir seçim yaparak veya iptal ederek açılır menüyü kapatana kadar basılı kalır.
CMFCMenuButton::m_hMenu
Ekli menünün tutamacı.
HMENU m_hMenu;
Açıklamalar
Çerçeve, kullanıcı menü düğmesine tıkladığında bu üye değişkeni tarafından belirtilen menüyü görüntüler.
CMFCMenuButton::m_nMenuResult
Kullanıcının açılır menüden hangi öğeyi seçtiğini gösteren tamsayı.
int m_nMenuResult;
Açıklamalar
Kullanıcı seçim yapmadan menüyü iptal ederse veya bir hata oluşursa bu üye değişkeninin değeri sıfırdır.
CMFCMenuButton::m_bDefaultClick
Düğmedeki metin veya resimlerin varsayılan olarak işlenmesine izin verir.
BOOL m_bDefaultClick;
Açıklamalar
m_bDefaultClick false olarak ayarlanması, düğmenin üzerinde herhangi bir yere tıkladığınızda düğmenin menüyü göstermesine neden olur.
CMFCMenuButton::P reTranslateMessage
Pencere iletilerini göndermeden önce çevirmek için çerçeve tarafından çağrılır.
virtual BOOL PreTranslateMessage(MSG* pMsg);
Parametreler
pMsg
[in] İşlenmek üzere iletiyi içeren bir MSG yapısını gösterir.
Dönüş Değeri
İleti çevrildiyse ve gönderilmemesi gerekiyorsa sıfır olmayan; İleti çevrilmediyse ve gönderilmesi gerekiyorsa 0.
Açıklamalar
CMFCMenuButton::SizeToContent
Düğmenin boyutunu metin boyutuna ve resim boyutuna göre değiştirir.
virtual CSize SizeToContent(BOOL bCalcOnly = FALSE);
Parametreler
bCalcOnly
[in] Bu yöntemin düğmesini yeniden boyutlandırıp boyutlandırmadığını gösteren boole parametresi.
Dönüş Değeri
Düğmenin yeni boyutunu belirten bir CSize nesnesi.
Açıklamalar
Bu işlevi çağırırsanız ve bCalcOnly TRUE ise, SizeToContent
düğmenin yalnızca yeni boyutunu hesaplar.
Düğmenin yeni boyutu, düğme metnine, resmine ve okuna sığacak şekilde hesaplanır. Çerçeve ayrıca yatay kenar için 10 piksel ve dikey kenar için 5 piksel önceden tanımlanmış kenar boşlukları ekler.