Aracılığıyla paylaş


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

CObject

CCmdTarget

CWnd

CButton

CMFCButton

CMFCMenuButton

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.

Ayrıca bkz.

Hiyerarşi Grafiği
Sınıflar
CMFCButton Sınıfı