heroxianf 发表于 2017-6-14 10:56:32

下拉菜单空间选中状态如何获取呢[已解决]

本帖最后由 heroxianf 于 2017-6-14 11:48 编辑

我想获取$item1空间的 选中状态,请问用什么函数呢?

#include <GuiButton.au3>

GUICreate("AU3",300,200)
$Label1 = GUICtrlCreateLabel("右键菜单", 18, 160, 70, 15)
GUICtrlSetColor($Label1,0xff0000)
$context = GUICtrlCreateContextMenu($Label1)
$item1 = GUICtrlCreateMenuItem('菜单1', $context)
$item2 = GUICtrlCreateMenuItem('菜单2', $context)
GUISetState(@SW_SHOW)

While 1
      $msg = GUIGetMsg()
      Switch $msg
                Case -3
                        Exit
                Case $item1
                        GUICtrlSetState($item1, 1)
                Case $item2
                     Local $tt = _GUICtrlButton_GetState($item1)
                                           MsgBox(0, "", $tt)
      EndSwitch
WEnd

heroxianf 发表于 2017-6-14 11:02:26

采用TrayItemGetState函数不管选没选中得到的都是 1#include <GuiButton.au3>
#include <TrayConstants.au3>

GUICreate("AU3",300,200)
$Label1 = GUICtrlCreateLabel("右键菜单", 18, 160, 70, 15)
GUICtrlSetColor($Label1,0xff0000)
$context = GUICtrlCreateContextMenu($Label1)
$item1 = GUICtrlCreateMenuItem('菜单1', $context)
$item2 = GUICtrlCreateMenuItem('菜单2', $context)
GUISetState(@SW_SHOW)

While 1
      $msg = GUIGetMsg()
      Switch $msg
                Case -3
                        Exit
                Case $item1
                        GUICtrlSetState($item1, 1)
                Case $item2
                     Local $tt = TrayItemGetState($item1)
                                           MsgBox(0, "", $tt)
      EndSwitch
WEnd

afan 发表于 2017-6-14 11:25:05

Local $tt = GUICtrlRead($item1) - 64

heroxianf 发表于 2017-6-14 11:48:38

回复 3# afan


    A大这个好啊,我还在想判断 65 和 68的问题{:face (197):}   减一下就好了。

449199199 发表于 2018-4-12 19:39:53

这是有源码情况下获取菜单状态,请问大神们知道其他程序的菜单如何操作,在自定义UDF 关于菜单的操作都不起作用,,,
页: [1]
查看完整版本: 下拉菜单空间选中状态如何获取呢[已解决]