Option ExplicitPrivate Const MF_POPUP = &H10& Private Const MF_STRING = &H0&Private Const MF_SEPARATOR = &H800& Private Const MF_BYPOSITION = &H400&Private Declare Function CreateMenu Lib "user32" () As Long Private Declare Function CreatePopupMenu Lib "user32" () As Long Private Declare Function InsertMenu Lib "user32" Alias "InsertMenuA" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpNewItem As Any) As Long Private 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 Any) As LongPrivate Declare Function SetMenu Lib "user32" (ByVal hwnd As Long, ByVal hMenu As Long) As Long Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As LongPrivate Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As LongDim hMenu As Long Dim hFileSubMenu As Long Dim hHelpSubMenu As LongPrivate Sub cmdCreate_Click() hMenu = CreateMenu() hFileSubMenu = CreatePopupMenu() hHelpSubMenu = CreatePopupMenu()
Private Const MF_STRING = &H0&Private Const MF_SEPARATOR = &H800&
Private Const MF_BYPOSITION = &H400&Private Declare Function CreateMenu Lib "user32" () As Long
Private Declare Function CreatePopupMenu Lib "user32" () As Long
Private Declare Function InsertMenu Lib "user32" Alias "InsertMenuA" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpNewItem As Any) As Long
Private 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 Any) As LongPrivate Declare Function SetMenu Lib "user32" (ByVal hwnd As Long, ByVal hMenu As Long) As Long
Private Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As LongPrivate Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As LongDim hMenu As Long
Dim hFileSubMenu As Long
Dim hHelpSubMenu As LongPrivate Sub cmdCreate_Click()
hMenu = CreateMenu()
hFileSubMenu = CreatePopupMenu()
hHelpSubMenu = CreatePopupMenu()
InsertMenu hMenu, 0, MF_BYPOSITION, 0, "&File"
InsertMenu hMenu, 1, MF_BYPOSITION, 1, "&Edit"
InsertMenu hMenu, 2, MF_BYPOSITION, 2, "&View"
InsertMenu hMenu, 3, MF_BYPOSITION, 3, "&Help"
ModifyMenu hMenu, 0, MF_POPUP, hFileSubMenu, "&File"
hFileSubMenu = GetSubMenu(hMenu, 0)
InsertMenu hFileSubMenu, 0, MF_BYPOSITION, 1001, "&New"
InsertMenu hFileSubMenu, 1, MF_BYPOSITION Or MF_SEPARATOR, 1002, ""
InsertMenu hFileSubMenu, 2, MF_BYaPOSITION, 1003, "&Exit"
ModifyMenu hMenu, 3, MF_POPUP, hHelpSubMenu, "&Help"
hHelpSubMenu = GetSubMenu(hMenu, 3)
InsertMenu hHelpSubMenu, 0, MF_BYPOSITION, 4001, "&About..."
InsertMenu hHelpSubMenu, 1, MF_BYPOSITION Or MF_SEPARATOR, 4002, ""
InsertMenu hHelpSubMenu, 2, MF_BYPOSITION, 4003, "&Help"
SetMenu Me.hwnd, hMenu
DrawMenuBar Me.hwnd
End Sub
popupmenu本身并没有这种事件的吧?
我的另一个帖子也跟popupmenu相关,happy_sea(开心海) 能不能帮忙看看?
http://community.csdn.net/Expert/TopicView3.asp?id=5006261