我用这个代码作了一个弹出的菜单,但如果窗口的菜单的visible属性为false,就显示不出来了,如何让菜单在窗口上不显示但弹出时显示
Option Explicit
Private Type POINTAPI
x As Long
y As Long
End Type
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) 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 LongPrivate Sub Command1_Click()
Dim pos As POINTAPI, hMenu As Long
GetCursorPos pos
hMenu = GetSubMenu(GetMenu(Form1.hwnd), 0)
TrackPopupMenu hMenu, 0, pos.x, pos.y, 0, Form1.hwnd, ByVal 0&End Sub
Option Explicit
Private Type POINTAPI
x As Long
y As Long
End Type
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) 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 LongPrivate Sub Command1_Click()
Dim pos As POINTAPI, hMenu As Long
GetCursorPos pos
hMenu = GetSubMenu(GetMenu(Form1.hwnd), 0)
TrackPopupMenu hMenu, 0, pos.x, pos.y, 0, Form1.hwnd, ByVal 0&End Sub
解决方案 »
- 多层FRAMESET嵌套的情况下,怎么操作最底层的FRAME或FROM?(加分重发)
- 求实例:VBCopyHook监控文件操作
- 日期和星期的代码
- 请问一下,我的水晶报表9在选择更多的数据源连接时,为什么没有sql server2000这一项呢?
- 如何获得工作组(域)名称?用winsock可以吗。。。在线!
- 请问 如何模拟ctrl + alt + del.急啊。
- 爱上一朵有主之花,郁闷ing,请各位出出注意。
- 简单问题,我不记得了:do while......loop循环中,怎样设置不进入。
- 我想用Fields对象连接SQL返回对象集的列值,请问高人该用什参数????
- 怎样才能保住程序员的最后一点权利?
- 一个很菜的问题,急啊!!!!!!在线等
- 关于一个水厂语音系统的问题!(100分吐血提问)
popupmenu mnuFile(菜单名)