允許或禁止指定的菜單條目
返回值 : Long,
參數表 :
參數 類(lèi)型及說(shuō)明
hMenu Long,菜單句柄
wIDEnableItem Long,欲允許或禁止的一個(gè)菜單條目的標識符。如果在wEnable參數中設置了MF_BYCOMMAND標志,這個(gè)參數就代表欲改變菜單條目的命令I(lǐng)D。如設置的是MF_BYPOSITION,則這個(gè)參數代表菜單條目在菜單中的位置(第一個(gè)條目肯定是零)
wEnable Long,參考ModifyMenu函數中的菜單常數標志定義表,其中列出了允許使用的所有常數。對于這個(gè)函數,只能指定下述常數:MF_BYCOMMAND,MF_BYPOSITION,MF_ENABLED,MF_DISABLED以及MF_GRAYED
這些值有下列含義:
| · | MF_BYCOMMAND | 指定參數給出已存在的菜單項的命令I(lǐng)D號。此為缺省值。 |
| · | MF_BYPOSITION | 指定參數給出已存在菜單項的位置。第一項所在的位置是0。 |
| · | MF_DISABLED | 使菜單項無(wú)效,以便它不能被選擇,但不變灰。 |
| · | MF_ENABLED | 使菜單項有效,以便它能夠被選擇,并可從變灰的狀態(tài)中恢復出來(lái)。 |
| · | MF_GRAYED | 使菜單項無(wú)效,以便它不能被選擇并同時(shí)變灰。 |
注解
如指定的菜單條目依附了一個(gè)彈出式菜單,那么整個(gè)彈出式菜單都會(huì )受到影響
說(shuō)明:
使菜單項有效、無(wú)效或變灰。CreateMenu,InsertMenu,ModifyMenu和LoadMenuIndirect成員函數同時(shí)也設置菜單項的狀態(tài)(有效、無(wú)效、或變灰)。
使用MF_BYPOSITION的值需要應用恰當的CMenu對象。若菜單條的CMenu被使用,那么頂層菜單項(菜單條中的某項)將受影響。如果為了在彈出菜單或嵌套的彈出菜單中通過(guò)位置來(lái)設置項的狀態(tài),那么應用必須指定彈出菜單的CMenu。
當應用指定了MF_BYCOMMAND標志,那么Windows將檢測所有的屬于CMenu的彈出菜單項。因此,除非當前正在復制菜單項,那么使用菜單條的CMenu是非常有效的。