如何启用菜单项并确保点击甚至会触发?
我有app1和app2
app2 有
3个菜单项
黄金
银
青铜
我设置了选项 enabled = false
在所有3项单击事件中我都有msgbox,所以当点击它时我知道msgbox已启动并且正常工作。
=======================================
APP1 有下面的代码,我有一个图像,我拖动到app1获取窗口句柄值,然后获取菜单句柄值,每个菜单句柄值我插入到text2.text并启用菜单按钮。
Public Declare Function EnableWindow Lib "user32" (ByVal hwnd As Long, ByVal fEnable As Long) As Long
Private Sub Command5_Click()
EnableWindow Text2.Text, 1 ' Enable < This is the API call
ControllEnabled = True ' Sets Swich
End Sub
当我使用句柄值启用每个菜单项时,菜单项然后变得可点击,当我点击它时,它不会激活msgbox?怎么样来 的模块
'Public verables
Public ControllEnabled As Boolean
Public CursorPosition As POINT
Public Targeting As Boolean
'User defined type
Public Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
Public Type POINT
x As Long
y As Long
End Type
答案 0 :(得分:0)
它没有触发MsgBox,因为您还没有为菜单项编写单击事件处理程序。此外,您不需要使用API来执行您需要执行的操作,并且我不建议您这样做。使用内置事件处理程序更容易。
我将从VB6 doc向您推荐Microsoft的Using Menus in Your Application。我建议你废弃你现有的代码,阅读所有这些,然后重新开始。菜单并不像你制作它们那么困难,如果采用更常用的菜单创建方法,你将节省大量时间。