窗口未激活/出现在前面

时间:2017-02-02 16:36:10

标签: autoit

我有一个脚本打开一个网页,登录,然后打开一个程序,并且应该将程序带到前面并使其全屏显示。它会打开窗口,但并不总是将它带到前面,它不会全屏显示。有人可以提供任何帮助吗?这是我的代码:

; Closes last dialog if still open
Sleep(5000)
Send("{ENTER}")
Sleep(500)

; Wait for program to open
WinWait("[CLASS: Program example]","", 5)

;Brings Program to front
if WinExists("[CLASS: Program example]") Then
   WinActivate("[CLASS: Program example]")
EndIf

Sleep(500)

; Sets program fullscreen
WinSetState("[ACTIVE]", "", @SW_MAXIMIZE)

我添加了WinWait以确定它是否会有所帮助,但事实并非如此。窗户只停留在后面而且从不移动。感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:1)

有时AutoIt不会执行某项任务,因为某些事情会在干扰命令的同时发生。确保工作正常的最佳方法是始终检查任务是否已执行,如果没有则再次尝试。这个循环将解决你的问题。

;Brings Program to front
While Not WinActive("[CLASS: Program example]")
    WinActivate("[CLASS: Program example]")
    Sleep(1000) ; Wait one second (or any seconds you want)
WEnd