zb7512511 发表于 2011-1-13 14:53:24

系统栏菜单 TrayItemSetOnEvent 为什么失效?

本帖最后由 zb7512511 于 2011-1-13 14:55 编辑

代码如下,我使用系统栏菜单调用tt()后,再使用菜单调用about()和退出等自定义函数就失效了,怎么解决?
Opt("TrayOnEventMode", 1);使用onevent模式
Opt("TrayIconDebug", 1);调试模式
Opt("TrayMenuMode", 1) ; 默认菜单项目 (脚本暂停中/退出)(Script Paused/Exit) 将不会显示.
HotKeySet("{f9}", "ExitEvent")
$tt = TrayCreateItem("测试程序")
$about = TrayCreateItem("关于")
$exit = TrayCreateItem("退出")
TrayItemSetOnEvent($tt, "TT")
TrayItemSetOnEvent($about, "about")
TrayItemSetOnEvent($exit, "ExitEvent")

main()

Func main()
        While 1
                 Sleep(100)
        WEnd
EndFunc   ;==>main

Func TT()
        TrayItemSetState($tt, 4);菜单不被选中
        TrayTip("测试程序", "goTT", 3)
        While 1
                Sleep(100)
        WEnd
EndFunc   ;==>TT

Func about()
        TrayItemSetState($about, 4);菜单不被选中
        TrayTip("测试程序", "关于测试", 3)
EndFunc   ;==>about

Func ExitEvent()
        TrayItemSetState($exit, 4);菜单不被选中
        Exit 0
EndFunc   ;==>ExitEvent

3mile 发表于 2011-1-13 14:58:39

还在循环中,当然没有效果了。
注释掉第23-25行

小A 发表于 2011-1-13 15:05:27

回复 1# zb7512511
Opt("TrayOnEventMode", 1);使用onevent模式
Opt("TrayIconDebug", 1);调试模式
Opt("TrayMenuMode", 1) ; 默认菜单项目 (脚本暂停中/退出)(Script Paused/Exit) 将不会显示.
HotKeySet("{f9}", "ExitEvent")
$tt = TrayCreateItem("测试程序")
$about = TrayCreateItem("关于")
$exit = TrayCreateItem("退出")
TrayItemSetOnEvent($tt, "TT")
TrayItemSetOnEvent($about, "about")
TrayItemSetOnEvent($exit, "ExitEvent")

main()

Func main()
      While 1
               Sleep(100)
      WEnd
EndFunc   ;==>main

Func TT()
      TrayItemSetState($tt, 4);菜单不被选中
      TrayTip("测试程序", "goTT", 3)
;~         While 1 ;这里进入了一个死循环
;~               Sleep(100)
;~         WEnd
EndFunc   ;==>TT

Func about()
      TrayItemSetState($about, 4);菜单不被选中
      TrayTip("测试程序", "关于测试", 3)
EndFunc   ;==>about

Func ExitEvent()
      TrayItemSetState($exit, 4);菜单不被选中
      Exit 0
EndFunc   ;==>ExitEvent

zb7512511 发表于 2011-1-13 16:20:14

23,24,25之间我简单写了,本来里面有程序需要执行的,大概就是取屏幕颜色,然后模仿鼠标点击的命令,是需要循环不停去色的。$color = PixelGetColor(474 - $Pos, 387 - $Pos, $windowtitle);初始界面
页: [1]
查看完整版本: 系统栏菜单 TrayItemSetOnEvent 为什么失效?