ModifyMenu

ModifyMenu işlevi, var olan bir menü öğesini değiştirir. Bu işlev, içerik, görünümünü ve davranışını menü öğesinin belirtmek için kullanılır.

ModifyMenu işlevi SetMenuItemInfo işlevi tarafından bırakmıştır. Eğer sen yapmak değil lüzum birisi SetMenuItemInfo genişletilmiş özellikleri ModifyMenu, ancak kullanmaya devam edebilirsiniz.

bool ModifyMenu ()  HMENU'nun  hMnu, / / işlemek için MenüUINTuPosition, / / menü madde değiştirmeUINTuFlags, / / menü öğesi flagsUINTuIDNewItem, / / menü madde tanımlayıcısı veya işlemek için açılan / / menü veya alt menülpctstrlpNewItem / / menü madde içeriği);
 

Parametreleri

hMnu
Değiştirilmesi için menüsüne ele.
uPosition
UFlags parametresi tarafından belirlendiği şekilde değiştirilmesi için menü öğesini belirtir.
uFlags
UPosition parametre ve içeriği, görünümünü ve davranışını menü öğesinin yorumu denetleyen bayraklar belirtir. Bu parametreyi aşağıdaki gereken değerlerden biri ve en az bir aşağıdaki açıklamalar bölümünde listelenen değerleri birleşimi olmalıdır.
Değer Anlamı
MF_BYCOMMAND UPosition parametresi menü öğesi tanıtıcısı sağlar gösterir. Ne mf_bycommand ne de MF_BYPOSITION bayrağı belirtilmişse mf_bycommand bayrağı varsayılan değerdir.
MF_BYPOSITION UPosition parametre menüsüne sıfır tabanlı göreceli konumunu verir gösterir.

uIDNewItem
Değiştirilen menü öğesi tanıtıcısı belirtir ya da uFlags parametre varsa mf_popup bayrağını ayarlayın, açılır menü veya alt menü için tanıtıcı.
lpNewItem
Değişen menü öğesinin içeriği için işaretçi. UFlags parametresi MF_BITMAP, mf_ownerdraw ya da MF_STRING bayrak olup olmadığını içerir Bu parametre yorumu bağlıdır.
Değer Anlamı
MF_BITMAP Biteşlem tutamacı içeren.
MF_OWNERDRAW Menü öğesine ilgili ek verileri korumak için kullanılan uygulama tarafından sağlanan 32 bitlik bir değer içerir. WM_MEASUREITEM lparam parametresinin tarafından işaret yapısını veya menü öğesi oluşturulduğunda veya görünüşünü gönderilip WM_DRAWITEM iletileri ItemData üyesi değerdir.
MF_STRING Bir boş sonlandırılmış dize (varsayılan) gösteren bir işaretçi içeren.

Dönüş değerleri

İşlev başarılı olursa, dönüş değeri sıfır.

İşlev başarısız olursa, dönüş değeri sıfırdır. Uzatılmış hata bilgilerini almak için GetLastError çağrı.

Açıklamalar

ModifyMenu açılan bir açılır menü veya alt menü öğesini geçiyorsa, işlev eski açılır menü veya alt menü yok eder ve onun tarafından kullanılan belleği serbest bırakır.

Bit eşlem veya sahibi çizilmiş menü öğeleri ile çalışmak klavye hızlandırıcıları amacıyla, menü sahibi wm_menuchar ileti işlemeniz gerekir. Daha fazla bilgi için bkz: Owner-Drawn menüler ve wm_menuchar ileti.

Uygulama menüsünde görüntülenen pencerede olup olmadığını bir menü değiştiğinde, DrawMenuBar işlevi çağırmanız gerekir. Varolan menü öğelerini ve özniteliklerini değiştirmek için o CheckMenuItem ve EnableMenuItem işlevleri kullanmak daha hızlıdır.

Aşağıdaki listede uFlags parametresinde ayarlanmış olabilir bayrakları açıklar:

Değer Anlamı
MF_BITMAP Bit eşlem menü öğesini kullanır. LpNewItem parametresi, bitmap için tanıtıcı içerir.
MF_BYCOMMAND UPosition parametresi, menü öğesi (varsayılan) tanımlayıcı belirtir gösterir.
MF_BYPOSITION UPosition parametresi, yeni bir menü öğesi sıfır tabanlı göreli konumunu belirtir gösterir.
MF_CHECKED Öğenin yanındaki onay işareti koyar. Onay işareti bitmapler (bkz: SetMenuItemBitmaps işlevi) uygulamanızı sağlar, bu bayrak menü öğesinin yanındaki işaretli bir bitmap görüntüler.
MF_DISABLED Menü öğesi seçilemez, ancak bu bayrak o gri değil devre dışı bırakır.
MF_ENABLED Böylece o seçilebilir ve gri durumuna yükler menü öğesi sağlar.
MF_GRAYED Menü öğesi devre dışı bırakır ve böylece seçilemez o grays.
MF_MENUBARBREAK İşlevleri gibi mf_menubreak için bir menü çubuğu bayrak. Bir açılır menü, alt menü veya kısayol menüsü için yeni bir sütun eski sütun dikey çizgiyle ayrılır.
MF_MENUBREAK (Menü çubukları için) yeni bir satır öğesi yerleştirir veya sütunlarını ayıran olmadan yeni bir sütun (için açılır menü, alt menü veya kısayol menüsü).
MF_OWNERDRAW Madde sahibi çizilmiş bir madde olduğunu belirtir. İlk kez menü görüntülenmeden önce Menü sahibi penceresinin genişliğini ve yüksekliğini menü öğesinin almak için bir WM_MEASUREITEM iletisi alır. Menü öğesinin görünümünü güncelleştirilmesi gereken her WM_DRAWITEM mesaj sonra sahibi penceresinin pencere yordamı gönderilir.
MF_POPUP Menü öğesi bir açılır menüyü veya alt menüyü açar belirtir. UIDNewItem parametresi, açılır menü veya alt menü tanıtıcısını belirtir. Bu bayrak, bir menü çubuğu veya bir açılır menü, alt menü veya kısayol menüsü için bir alt menü açılır bir menüde menü adı eklemek için kullanılır.
MF_SEPARATOR Yatay çizgi çizer. Bu bayrak, yalnızca bir açılır menü, alt menü veya kısayol menüsü kullanılır. Satır gri, devre dışı, vurgulanan veya değiştirilemez. LpNewItem ve uIDNewItem parametreleri yoksayılır.
MF_STRING Menü öğesi bir metin dizesi belirtir; lpNewItem parametresinin dizeye işaret eder.
MF_UNCHECKED (Varsayılan) öğesinin yanındaki onay işareti yerleştirmez. Onay işareti bitmapler (bkz: SetMenuItemBitmaps işlevi) uygulamanızı sağlar, bu bayrak menü öğesinin yanındaki denetlenmeyen bir bitmap görüntüler.

Aşağıdaki gruplar bayrakları birlikte kullanılamaz:

Ayrıca bkz:

Menüler genel bakış, menü işlevleri, döndürmesini, CheckMenuItem, DrawMenuBar, EnableMenuItem, SetMenuItemBitmaps, SetMenuItemInfo, WM_DRAWITEM, WM_MEASUREITEM

Index