怎么利用系统托盘的“暂停”菜单实现暂停功能?
我编了一个程序托盘的“暂停”和“退出”菜单,退出菜单的退出好用,但是“暂停”菜单的暂停功能进入无限循环,不能停止暂停,一直while...wend下去了。烦请高手指点一下问题出在哪?代码如下:
HotKeySet("{F11}", "ex") ;退出热键为F11
Opt("TrayIconDebug", 1)
Opt("GUICoordMode", 1)
Opt("GUIOnEventMode", 1)
Opt("MouseCoordMode", 1)
Opt('traymenumode', 1)
Opt('trayoneventmode',2)
#Include <Constants.au3>
$tz3 = TrayCreateItem('暂停')
TrayCreateItem('')
$tz1 = TrayCreateItem('退出')
TraySetState()
TrayItemSetOnEvent($tz1, 'ex')
trayitemsetonevent($tz3,'zt')
while 1
sleep(1000)
msgbox(0,'','主程序')
WEnd
Func zt()
$fc1=TrayItemgetState($tz3)
If $fc1=68 Then TrayItemSetstate($tz3,65)
while 1
sleep(500)
$fc1=trayitemgetstate($tz3)
if $fc1=68 then ExitLoop
WEnd
EndFunc
func ex()
Exit
EndFunc
[ 本帖最后由 喜马拉雅河 于 2009-1-6 15:38 编辑 ] 怎么我的代码跟别人的显示不一样?别人的贴子里代码是有颜色的,我的没有?
上面的代码在调试时显示,总是处于下面这个循环中.
while 1
sleep(500)
$fc1=trayitemgetstate($tz3)
if $fc1=68 then ExitLoop
WEnd
应当我再次单击“循环”菜单去掉“钩”时,退出调用的ZT()函数而回到主程序啊,但实际上却没回到主程序,怎么回事哪? 自已顶一下吧 代码不是完整的? 原帖由 顽固不化 于 2009-1-6 10:22 发表 http://www.autoitx.com/images/common/back.gif
代码不是完整的?
抱谦,我已经改了,这回完整了。 自己再顶一下,怎么这个暂停的功能就实现不了吗?
HotKeySet("{F11}", "ex") ;退出热键为F11
Opt('traymenumode', 1)
Opt('trayoneventmode',1)
$pause = 0
$tz3 = TrayCreateItem('暂停')
TrayCreateItem('')
$tz1 = TrayCreateItem('退出')
TraySetState()
TrayItemSetOnEvent($tz1, 'ex')
trayitemsetonevent($tz3,'zt')
AdlibEnable('pause', 100)
while 1
sleep(1000)
msgbox(0,'','主程序', 1)
WEnd
Func zt()
$pause = Not $pause
If $pause Then
TrayItemSetstate($tz3,65)
Else
TrayItemSetstate($tz3,68)
EndIf
EndFunc
func ex()
Exit
EndFunc
Func pause()
While $pause
Sleep(100)
WEnd
EndFunc
非常感谢狮子了。
看了你的帮助,我感觉我的那段代码可能是错在ZT()函数里不应该放循环时间的命令 学习了。。。。。。。。。。。。
页:
[1]