ModifyMenu

此頁沒有內(nèi)容條目
內(nèi)容

ModifyMenu,ModifyMenuBynum

VB聲明

Declare Function ModifyMenu& Lib "user32" Alias "ModifyMenuA" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpString As String)

Declare Function ModifyMenuBynum& Lib "user32" Alias "ModifyMenuA" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpString As Long)

說明

改變菜單條目。在vb里這個函數(shù)做出的許多改變都會有效的執(zhí)行,但不能由vb菜單對象反映出來

返回值

Long,非零表示成功,零表示失敗。會設置GetLastError

參數(shù)表

參數(shù)

類型及說明

hMenu

Long,菜單句柄

nPosition

Long,欲改變的菜單條目的標識符。如在wFlags參數(shù)中指定了MF_BYCOMMAND,這個參數(shù)就代表欲改變的菜單條目的命令I(lǐng)D。如設置的是MF_BYPOSITION,這個參數(shù)就代表菜單條目在菜單中的位置(第一個條目的位置為零)

wFlags

Long,一系列常數(shù)標志的組合。詳見菜單常數(shù)標志表

wIDNewItem

Long,指定菜單條目的新命令I(lǐng)D。如在wFlags參數(shù)中指定了MF_POPUP標志,就應是一個彈出式菜單的句柄

lpString

String或Long,如在wFlags參數(shù)中指定了MF_STRING標志,就代表欲設置到菜單的字串。如設置的是MF_BITMAP,就代表一個Long變量,其中包含了一個位圖句柄。如設置的是MF_OWNERDRAW,那么這個值就會包括到DRAWITEMSTRUCT和MEASUREITEMSTRUCT結(jié)構(gòu)中,并由windows在條目需要重畫的時候發(fā)出

注解

標志的下述組合形式是不允許的:MF_BYCOMMAND和MF_BYPOSITION;MF_CHECKED和MF_UNCHECKED;MF_MENUBARBREAK和MF_MENUBREAK;MF_DISABLED,MF_ENABLED和MF_GRAYED;MF_BITMAP,MF_STRING,MF_OWNERDRAW和MF_SEPARATOR

菜單常數(shù)標志表

MF_BITMAP

菜單條目是一幅位圖。一旦設入菜單,這幅位圖就絕對不能刪除。所以不應該使用由vb的image屬性返回的值

MF_BYCOMMAND

菜單條目由菜單的命令I(lǐng)D指定

MF_BYPOSITION

菜單條目由條目在菜單中的位置決定。零代表菜單中的第一個條目

MF_CHECKED

檢查指定的菜單條目。不能與vb的checked屬性兼容

MF_DISABLED

禁止指定的菜單條目。不與vb的enabled屬性兼容

MF_ENABLED

允許指定的菜單條目。不與vb的enabled屬性兼容

MF_GRAYED

禁止指定的菜單條目,并用淺灰色描述它。不與vb的enabled屬性兼容

MF_MENUBARBREAK

在彈出式菜單中,將指定的條目放置于一個新列,并用一條垂直線分隔不同的列

MF_MENUBREAK

在彈出式菜單中,將指定的條目放置于一個新列。在頂級菜單中,將條目放置到一個新行

MF_OWNERDRAW

創(chuàng)建一個物主繪圖菜單(由您設計的程序負責描繪每個菜單條目)

MF_POPUP

將一個彈出式菜單置于指定的條目??捎糜趧?chuàng)建子菜單及彈出式菜單

MF_SEPARATOR

在指定的條目處顯示一條分隔線

MF_STRING

在指定的條目處放置一個字串。不與vb的caption屬性兼容

MF_UNCHECKED

檢查指定的條目。不能與vb的checked屬性兼容

Top