Здравствуйте, гость ( Вход | Регистрация )

> Вопрос, вопрос по скрипту
Rolya
сообщение 24.1.2017, 4:20
Сообщение #1


*

Registred
Сообщений: 4
Регистрация: 24.1.2017
Группа: Пользователи
Наличность: 0
Пользователь №: 18.307
Возраст: 20



Доброго времени суток! Знатоки, подскажите, как разобраться с активным окном.
Есть задача(в браузере): нажимать на кнопку, потом она открывает новое окно, новое окно надо сделать "ворквиндов", что бы скрипт нашел картинку и кликнул по ней.
Сделал в таком виде, но оно не работает из-за неактивного окна на котором долно искать картинку.
Цитата
left 751, 556 abs
wait 4000
set #handle FindWindow(Фото)
set #a FindImage(0 0 1920 1080 (C:\instasub.bmp) %arr #handle)
if #a > 0
left %arr [1 1] %arr [1 2] #handle
end_if
wait 1000
sendex ^{w}
wait 3000
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
 
Ответить в эту темуОткрыть новую тему
Ответов
cirus
сообщение 24.1.2017, 14:15
Сообщение #2


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26029
Пользователь №: 16.971
Возраст: 29



Картинку нужно искать в активном окне или нет?
Не работает - это не самое корректное описание проблемы. Может окно не находится, может картинка не находится, может клик не туда делается. Ещё полно причин можно найти. Давайте по порядку.
Открываем окно, в котором ищем картинку. Запускаем скрипт:
Код
set #a FindImage(0 0 1920 1080 (C:\instasub.bmp) %arr)     // искать будет в активном окне
if #a > 0
    hint #a     Картинка найдена
else
    hint #a      Картинка не найдена
end_if
end_script

Проверяем находится ли вообще картинка.
Тоже самое с поиском окна:
Код
set #handle FindWindow(Фото)
log #handle
end_script

Проверяем находится ли окно и нужное ли оно по хендлу.
Перед кликом можно добавить move, чтобы было видно куда вообще кликает:
Код
move %arr [1 1] %arr [1 2] #handle
left %arr [1 1] %arr [1 2] #handle


И это - wait 4000, не самый лучший способ дождаться появления окна.
Код
set #handle 0
while #handle = 0                            // ждать пока окно не найдено
    set #handle FindWindow(Фото)
    wait 100
end_while
wait 500  // подождать, чтобы окно успело открыться
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения



Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 9.11.2025, 0:43
Designed by Nickostyle