捕获点击某菜单项的事件:响应“WM_COMMAND”消息
解决方案 »
- 用WebBrowser控件如何实现IE浏览器中的编码菜单的功能?
- 请教朋友一个问题
- 请问如何用MSFLEXGRID访问SQLserver2000的数据库?
- 程序打包后出现问题
- 关于两个相同的文件?
- 我用vb编的chat程序为什么不能运行
- 圣诞节的问题?
- 各位大哥快来帮忙啊!!!funlove.4099病毒感染了我们的电脑!!我们没有办法清除。如果哪位大哥真正帮上忙得话,情愿100分奉上!!!谢谢了!!!
- commondialog.showprinter调用后,为何打印对话框按取消后还继续执行后面的打印程序?
- 你好大神,我想把表格数据加密后上传到云盘,以保证数据安全。
- 如何指定光标的位置?
- 怎样使用MSCHART?另外还有比这更简单好用的类似的控件吗?请推荐
Const MF_APPEND = &H100&
Const TPM_LEFTALIGN = &H0&
Const MF_DISABLED = &H2&
Const MF_GRAYED = &H1&
Const MF_SEPARATOR = &H800&
Const MF_STRING = &H0&
Private Type POINTAPI
x As Long
y As Long
End Type
Private Declare Function CreatePopupMenu Lib "user32" () As Long
Private Declare Function TrackPopupMenu Lib "user32" (ByVal hMenu As Long, ByVal wFlags As Long, ByVal x As Long, ByVal y As Long, ByVal nReserved As Long, ByVal hwnd As Long, ByVal lprc As Any) As Long
Private Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Private Declare Function AppendMenu Lib "user32" Alias "AppendMenuA" (ByVal hMenu As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpNewItem As Any) As Long
Private Declare Function DestroyMenu Lib "user32" (ByVal hMenu As Long) As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Dim hMenu As Long
Private Sub Form_Load()
'KPD-Team 1998
'URL: http://www.allapi.net/
'E-Mail: [email protected]
'Create an empty popupmenu
hMenu = CreatePopupMenu()
'Append a few menu items
AppendMenu hMenu, MF_STRING, ByVal 0&, "Hello !"
AppendMenu hMenu, MF_GRAYED Or MF_DISABLED, ByVal 0&, "Testing ..."
AppendMenu hMenu, MF_SEPARATOR, ByVal 0&, ByVal 0&
AppendMenu hMenu, MF_CHECKED, ByVal 0&, "TrackPopupMenu"
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
Dim Pt As POINTAPI
'Get the position of the mouse cursor
GetCursorPos Pt
If Button = 1 Then
'Show our popupmenu
TrackPopupMenu hMenu, TPM_LEFTALIGN, Pt.x, Pt.y, 0, Me.hwnd, ByVal 0&
Else
'Show our form's default popup menu
TrackPopupMenu GetSystemMenu(Me.hwnd, False), TPM_LEFTALIGN, Pt.x, Pt.y, 0, Me.hwnd, ByVal 0&
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
'Destroy our menu
DestroyMenu hMenu
End Sub
vb中怎么响应“WM_COMMAND”消息啊?????????
mnu(mnu.Count - 1).Visible = True即可删除:unload mnu(mnu.count-1)或记录新添加菜单的index, 直接删除 unload mnu(mnuindex)