(已解决)请教如何让程序在条件未满足时一直在那里等待直到满足时向下执行?
本帖最后由 yufei8051 于 2012-5-5 22:07 编辑感谢各位学长在上个帖子(怎样取得列表框的文字呀?用Au3Info什么也不显示?)里的指导,基本问题解决了,实验代码如下: $kk = ControlGetText("预警 - (运行)", "","")
$yjsl=ControlListView("预警 - (运行)", "",1702,"GetItemCount");是否有预警
$gpdm = StringLeft(ControlListView("预警 - (运行)", "",1702,"GetText",0,0),6);取得股票代码
$mmbz = StringLeft(ControlListView("预警 - (运行)", "",1702,"GetText",0,1),2);取得买卖标志
010 If $yjsl>0then
If StringCompare($mmbz,"买进")=0 Then
MsgBox(0, "测试", $gpdm&"买进")
EndIf
If StringCompare($mmbz,"卖出")=0 Then
MsgBox(0, "测试", $gpdm&"卖出")
EndIf
050 EndIf
MsgBox(0, "测试", "还没预警等着他")
新问题又来了,我想让程序开始后就判断第010行的 ($yjsl>0) 是否大于0,若大于0则执行下面的语句到050行而后退出,若不大于0就一直在那里循环判断等着.。
也就是说只要条件不满足就始终等着,条件满足后执行一遍代码就退出。该怎么写? 本帖最后由 yufei8051 于 2012-5-4 16:35 编辑
水平真滴很菜,期望大大们指点!谢谢了先!
问题补充:
我用while 试了,还是不行,运行脚本后虽然不退出了,但是即使 $yjsl>0 了,脚本也没有任何反应While 1
If $yjsl>0Then
If StringCompare($mmbz,"买进")=0 Then
MsgBox(0, "测试", $gpdm&"买进")
EndIf
If StringCompare($mmbz,"卖出")=0 Then
MsgBox(0, "测试", $gpdm&"卖出")
EndIf
EndIf
sleep(3000)
WEnd DO
.....
UNTIL DO
.....
UNTIL
ANTKD 发表于 2012-5-4 16:24 http://www.autoitx.com/images/common/back.gif
谢谢指导,我再用这个试下 Do
If StringCompare($mmbz,"买进")=0 Then
MsgBox(0, "测试", $gpdm&"买进")
EndIf
If StringCompare($mmbz,"卖出")=0 Then
MsgBox(0, "测试", $gpdm&"卖出")
EndIf
sleep(3000)
Until $yjsl>0
;MsgBox(0, "测试", "还没预警等着他")
Exit还是不行啊?跟上面一样的情况 do()
func do()
If$yjsl>0then
If StringCompare($mmbz,"买进")=0 Then
MsgBox(0, "测试", $gpdm&"买进")
EndIf
If StringCompare($mmbz,"卖出")=0 Then
MsgBox(0, "测试", $gpdm&"卖出")
EndIf
else
do()
EndIf
endfunc
不知道行不行 do()
func do()
If$yjsl>0then
If StringCompare($mmbz,"买 ...
netegg 发表于 2012-5-4 16:59 http://www.autoitx.com/images/common/back.gif
感谢学长指导,可是我试了下提示:
本帖最后由 netegg 于 2012-5-4 17:10 编辑
函数名改下,do是关键字,偷懒写的,另外,变量用global定义,具体自己分析吧,不知道你脚本的结构长什么样 定时器更好,不然,还以为程序死掉了 谢谢楼上两位学长!能不能说具体一些呀?我太菜看不懂哦 回复 9# 凌九霄
那是另一码事 回复 2# yufei8051
你先用WinActivate激活你的“预警 - (运行)'的窗口,据我所知ControlGetText后台得不到控件信息吧。
但是即使 $yjsl>0 了,脚本也没有任何反应?你说$yjsl>0没有反应,你怎么知道大于0了 回复yufei8051
你先用WinActivate激活你的“预警 - (运行)'的窗口,据我所知ControlGetText后台得不到 ...
502762378 发表于 2012-5-4 20:19 http://www.autoitx.com/images/common/back.gif
我不用这一句了,改成等待窗口弹出,这样就解决了。
谢谢学长指导。
页:
[1]