paopaotang421 发表于 2013-6-13 14:28:48

【已解决】打开文件过程中判断对话框消失后循环打开操作

本帖最后由 黑羽祭 于 2013-6-14 12:06 编辑

Dim a,i,m,b
For a=1 to 100
Window("iOrthoWorks").Activate
Dialog("iOrthoWorks").WinButton("Button").VirtualObject("打开按钮").Click 11,7
Dialog("iOrthoWorks").Dialog("打开").WinEdit("文件名(N):").Set "1.ODS"
For i=1 to 5
    Select Case i
   Case 1 m="2.ODS"
   Case 2 m="3.ODS"
         Case 3 m="4.ODS"
         Case 4 m="5.ODS"
         Case 5 m="6.ODS"
    End Select
      next
Dialog("iOrthoWorks").Dialog("打开").WinEdit("文件名(N):").SetTOProperty"text",m
Dialog("iOrthoWorks").Dialog("打开").WinObject("打开(O)").Click 35,8
Window("iOrthoWorks").Activate
Window("iOrthoWorks").WinObject("Button_2").Click 28,37
Window("iOrthoWorks").Window("输出STL").WinObject("多步骤").Click 7,7
Window("iOrthoWorks").Window("输出STL").WinObject("输出").Click 26,15

if Window("iOrthoWorks").Window("输出STL").Dialog("wait").Exist then
         wait 60
end if
Next


以上是在执行打开文件后,再次执行系列动作会弹出“wait”对话框,因此,须等待“wait”对话框消失后,再次执行打开文件操作,其中打开的文件依次循环1.ods、2.ods等。
但是用以上代码实现时,“加粗部分”代码不会循环判断目前对话框是否消失并等待,要想实现怎么办?请高手帮忙!非常感谢!

黑羽祭 发表于 2013-6-13 15:05:19

本帖最后由 黑羽祭 于 2013-6-13 15:07 编辑

回复 1# paopaotang421


    循环判断?这样吧:Do
      wait 1
Loop While Window("iOrthoWorks").Window("输出STL").Dialog("wait").Exist(1)
直接while-wend也行:
While Window("iOrthoWorks").Window("输出STL").Dialog("wait").Exist(1)
        wait 1
Wend

paopaotang421 发表于 2013-6-14 10:54:42

回复 2# 黑羽祭


    O(∩_∩)O谢谢!
用while...wend解决了!
页: [1]
查看完整版本: 【已解决】打开文件过程中判断对话框消失后循环打开操作