Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Вы не забывайте, окно может существовать, но при этом быть в скрытом состоянии, и WinExists вернёт 1.

Иногда нужно проверять его “видимое” существование:

Код: Выделить весь код
$hGUI = GUICreate("_WinExistsEx Example")
;WinSetState($hGUI, "", @SW_SHOW)

$iExists = _WinExistsEx($hGUI)
$iVisible = @extended

MsgBox(64, '_WinExistsEx', StringFormat("[%s]\n\nWin Exists:\t%i\nWin Is Visible:\t%i", WinGetTitle($hGUI), $iExists, $iVisible))

Func _WinExistsEx($sTitle, $sText="")
    Local $iExists = WinExists($sTitle, $sText)
    Local $iVisible = Number(BitAND(WinGetState($sTitle, $sText), 2) = 2)

    Return SetExtended($iVisible, $iExists)
EndFunc

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community

Это сообщение посчитали полезным следующие участники:

Отправлено: 13:02, 30-05-2009 | #4