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