|
本帖最后由 wu5cheng3 于 2013-7-2 22:13 编辑
在论坛里搜索到这么一个帖子,不过貌似没解决!
http://www.autoitx.com/forum.php ... 5%CC%2B%D4%DD%CD%A3
自己的代码如下, 当我右键托盘点退出弹出窗口时.循环语句就暂停工作了,函数x()就没有效果了!
[au3]
;~ Opt("CaretCoordMode", 1) ;1=绝对位置, 0=相对位置, 2=客户区
;~ Opt("ExpandEnvStrings", 0) ;0=不展开, 1=展开
;~ Opt("ExpandVarStrings", 0) ;0=不展开, 1=展开
;~ Opt("GUICloseOnESC", 1) ;1=按下 ESC 将关闭窗口, 0=按下 ESC 将不关闭窗口
;~ Opt("GUICoordMode", 1) ;1=绝对位置, 0=相对位置, 2=单元格
;~ Opt("GUIDataSeparatorChar","|") ;"|"为默认
;~ Opt("GUIOnEventMode", 0) ;0=取消, 1=启用 OnEvent 模式
;~ Opt("GUIResizeMode", 0) ;0=不调整, <1024 特定的调整值
;~ Opt("GUIEventOptions",0) ;0=默认, 1=立即通知, 2=GuiCtrlRead 标签索引
;~ Opt("MouseClickDelay", 10) ;10 毫秒
;~ Opt("MouseClickDownDelay", 10) ;10 毫秒
;~ Opt("MouseClickDragDelay", 250) ;250 毫秒
;~ Opt("MouseCoordMode", 1) ;1=绝对位置, 0=相对位置, 2=客户区
;~ Opt("MustDeclareVars", 0) ;0=无需声明变量, 1=需要预先声明
;~ Opt("PixelCoordMode", 1) ;1=绝对位置, 0=相对位置, 2=客户区
;~ Opt("SendAttachMode", 0) ;0=不捆绑, 1=捆绑
;~ Opt("SendCapslockMode", 1) ;1=保存并恢复, 0=不保存
;~ Opt("SendKeyDelay", 5) ;5 毫秒
;~ Opt("SendKeyDownDelay", 1) ;1 毫秒
;~ Opt("TCPTimeout",100) ;100 毫秒
;~ Opt("TrayAutoPause",0) ;0=不暂停, 1=暂停
;~ Opt("TrayIconDebug", 0) ;0=无信息, 1=调试信息
;~ Opt("TrayIconHide", 0) ;0=显示, 1=隐藏托盘图标
Opt("TrayMenuMode", 3) ;0=扩展, 1=没有默认菜单, 2=没有自动 check, 4=菜单项目ID 不返回
;~ Opt("TrayOnEventMode",0) ;0=关闭, 1=启用
;~ Opt("WinDetectHiddenText", 0) ;0=不检测, 1=检测
;~ Opt("WinSearchChildren", 1) ;0=不搜索, 1=搜索子窗口
;~ Opt("WinTextMatchMode", 1) ;1=完全匹配, 2=快速匹配
;~ Opt("WinTitleMatchMode", 1) ;1=开头, 2=子串, 3=完全, 4=高级 , -1 to -4=Nocase
;~ Opt("WinWaitDelay", 250) ;250 毫秒
Global Const $GUI_EVENT_CLOSE = -3
Global Const $TRAY_EVENT_PRIMARYDOUBLE = -13
Global Const $TRAY_EVENT_PRIMARYDOWN = -7
Global Const $TRAY_EVENT_SECONDARYDOWN = -9
$gui = GUICreate("标题", 300, 170)
GUISetState()
$2 = TrayCreateItem("退出")
While 1
y()
x()
z()
WEnd
Func y()
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
WinSetState( "标题", "",@SW_HIDE)
EndSelect
EndFunc ;==>y
Func z()
$msg = TrayGetMsg()
Select
Case $msg = $TRAY_EVENT_PRIMARYDOWN
WinSetState( "标题", "",@SW_RESTORE)
Case $msg = $TRAY_EVENT_SECONDARYDOWN
MsgBox(0, "标题", "弹出这个窗口,x()函数就失效了")
TrayItemDelete($2)
Exit
EndSelect
EndFunc ;==>y
Func x()
WinClose("1")
EndFunc ;==>x
[/au3] |
|