CMenu::InsertMenu

bool InsertMenu ( UINT nPosition, UINT nFlags, UINT nIDNewItem = 0, lpctstr lpszNewItem = boş );

bool InsertMenu ( UINT nPosition, UINT nFlags, UINT nIDNewItem, const CBitmap* pBmp );

Dönüş değeri

İşlev başarılı olursa sıfırdan farklı; Aksi halde 0.

Parametreleri

nPosition

Önce yeni bir menü öğesi eklenecek olan menü öğesini belirtir. NFlags parametresi nPosition aşağıdaki şekillerde yorumlamak için kullanılabilir:

nFlags NPosition yorumu
MF_BYCOMMAND Parametre komut Kımlığı varolan menü öğesini verir belirtir. Ne mf_bycommand ne de MF_BYPOSITION ayarlanırsa, bu varsayılan değerdir.
MF_BYPOSITION Parametre varolan menü öğesinin konumunu verir belirtir. En düşük konumda 0 ilk öğedir. NPosition –1 ise, yeni bir menü öğesi menü sonuna eklenir.

nFlags

NPosition nasıl yorumlanacağını belirtir ve menü eklendiğinde yeni menü öğesinin durumu ile ilgili bilgileri belirtir. Ayarlanabilir bayrakların bir listesi için bkz: döndürmesini üye işlevi. Birden fazla değer belirtmek için onları mf_bycommand ya da MF_BYPOSITION bayrağı ile birleştirmek için Bitsel or işlecini kullanın.

nIDNewItem

Yeni menü öğesinin komut kimliğini belirtir veya, nFlags mf_popupiçin açılır menüyü menü tanıtıcı (HMENU'nun). NFlags mf_separator için ayarlanmışsa, nIDNewItem parametre (gerekli değil) yoksayılır.

lpszNewItem

Yeni menü öğesinin içeriğini belirtir. nFlags lpszNewItem aşağıdaki şekillerde yorumlamak için kullanılabilir:

nFlags LpszNewItem yorumu
MF_OWNERDRAW Uygulamanın menü öğesi ile ilişkilendirilmiş ek verileri korumak için kullanabileceğiniz bir uygulama tarafından sağlanan 32 bit değeri içerir. Bu 32 bit değeri ItemData üye tarafından sağlanan yapının uygulamada kullanılabilir WM_MEASUREITEM ve WM_DRAWITEM iletileri. Bu mesajları menü öğesinin başlangıçta görüntülenen veya değiştirildiğinde gönderilir.
MF_STRING Bir boş sonlandırılmış dize uzun bir işaretçi içerir. Varsayılan yorumu budur.
MF_SEPARATOR (Gerekli) lpszNewItem parametre yoksayılır.

pBmp

Noktaları bir CBitmap nesnesine menü öğesi kullanılacak.

Açıklamalar

NPosition tarafından belirtilen konumda yeni bir menü öğesi ekler ve diğer öğeleri menü taşır. Uygulama içinde nFlags değerlerini ayarlayarak menü öğesinin durumunu belirtebilirsiniz.

(Penceresinin görüntülenip görüntülenmeyeceğini) bir pencerede bulunan menü değiştiğinde, uygulama CWnd::DrawMenuBar çağırmalıdır.

NIDNewItem açılır menü belirttiğinde, içinde yerleştirilir menüsü bir parçası olur. Bu menü yok, eklenen menü de yok olacaktır. Eklenen bir menü çakışmayı önlemek için bir CMenu nesnesi ilişkisi kesildi.

Birden çok belge arabirim (MDI) alt pencereyi ekranı etkin ve bir açılır menü bu işlevin çağrılması ve MF_BYPOSITION bayrak, menü belirterek MDI uygulamasının menü içine bir uygulama ekler bir pozisyon daha sol beklenenden eklediyseniz. Çünkü etkin MDI alt penceresinin Denetim menüsünü MDI çerçevesi pencerenin menü çubuğunu ilk pozisyon içine eklenir bu olur. Menü düzgün şekilde konumlandırmak için uygulama, aksi takdirde kullanılacak konum değerini 1 eklemeniz gerekir. Bir uygulama WM_MDIGETACTIVE mesajı etkin alt pencereyi ekranı kaplayacak olup olmadığını belirlemek için kullanabilirsiniz.

CMenu genel bakış |nbsp; Sınıf üyeleri | Hiyerarşi çizelgesi

Ayrıca bkz:nbsp;CMenu::AppendMenu, CWnd::DrawMenuBar, CMenu::SetMenuItemBitmaps, CMenu::Detach, :: InsertMenu

Index