ITong 发表于 2013-1-9 12:02:35

autoit3 创建了一个托盘菜单,

本帖最后由 ITong 于 2013-1-9 13:20 编辑

#NoTrayIcon

Opt("TrayMenuMode", 3) ; 默认菜单项目 (脚本暂停中/退出)(Script Paused/Exit) 将不会显示,并且所选项目不能被选中(checkbox不会打勾) . 请参考TrayMenuMode选项1和2(3=1+2).

Local $prefsitem    = TrayCreateItem("参数")
TrayCreateItem("")
Local $aboutitem    = TrayCreateItem("关于")
TrayCreateItem("")
Local $exititem = TrayCreateItem("退出")

TraySetState()

While 1
    Local $msg = TrayGetMsg()
    Select
      Case $msg = 0
            ContinueLoop
      Case $msg = $prefsitem
            MsgBox(64, "参数:", "系统版本:" & @OSVersion)
      Case $msg = $aboutitem
            MsgBox(64, "关于:", "AutoIt3-托盘-例子.")
      Case $msg = $exititem
            ExitLoop
    EndSelect
WEnd

Exit上面的是帮助文档中的例子,

如上面例子,我想执行我的另一个
循环方法。。直到托盘菜单点击退出,
可是一直走菜单循环Case
不走下面的过一段时间刷新ie页面,如何解决啊?下面是我的循环代码!
求救,谢谢

do循环是让这个刷新页面一直循环下去。。#include <IE.au3>
Local $oIE = _IECreate("http://192.168.8.3:88/zentao/user-login-L3plbnRhby8=.html?account=zhang_tong&password=111111",0,0,1,0)
Do
visitsitebug("http://192.168.8.3:88/zentao/bug-browse-3-assignToMe-0.html","xxx网提醒:")
Sleep(1000)
visitsitebug("http://192.168.8.3:88/zentao/bug-browse-13-assignToMe-0.html","xxxx平台")
Sleep(60000)
Until 0=1

Func visitsitebug($value,$websitename)
        Local $oNav = _IENavigate($oIE,$value,1)
        _IEAction($oIE,"refresh")
        Local $sText = _IEBodyReadText($oIE)
        Local $var = String($sText)
        Local $result = StringInStr( $var,"暂时没有记录")
        If $result = 0 Then
                TrayTip($websitename, "有指派给我的bug未解决,请打开查看!", 5, 1)
                Sleep(10000)
        ElseIf $result > 0 Then
                TrayTip($websitename, "无bug需要解决。", 5, 1)
                Sleep(10000)
        EndIf
EndFunc

nmgwddj 发表于 2013-1-9 12:04:31

楼上兄台哪个公司的测试……

ITong 发表于 2013-1-9 12:05:59

回复 2# nmgwddj


    求解决。。。{:face (280):}

nmgwddj 发表于 2013-1-9 12:07:15

我先看看,下次代码写到代码框里好吧,这样很多人表示没有心情看。。

nmgwddj 发表于 2013-1-9 12:10:25

表示没有看懂,再新建个函数来掉带参数的visitsitebug函数,用AdlibRegister定时循环可否?

annybaby 发表于 2013-1-9 12:18:45

回复 1# ITong

while是个死循环啊,你代码中本来就是一直在接收托盘消息

    Case $msg = 0
这句没有必要

在while中加入你要执行的函数visitsitebug

另外竟然还有个DO循环,又那么多sleepN久,反应迟钝啊,建议用定时器
最要命的是,还不用代码标记或者语法高亮~~
不想看`

ITong 发表于 2013-1-9 13:21:38

回复 6# annybaby


    while里面加了,那循环一次,然后就走visitsitebug了啊。不可能再走while了啊

ITong 发表于 2013-1-9 13:31:47

回复 5# nmgwddj


    定时器是那个方法?给个简单例子,谢谢

ITong 发表于 2013-1-9 13:48:15

怎么标记为已解决 a?

cdmtony 发表于 2013-1-10 12:15:41

查看論壇資料吧。
页: [1]
查看完整版本: autoit3 创建了一个托盘菜单,