1

Тема: AHK: Поиск по фото

Здравствуйте, вот у меня есть фото, ну например в формате ".png", я знаю, что команда для поиска изображения ImageSearch. Меня интересует, как сделать так, что бы если нашло картинку, то исполнение скрипта продолжалось, а если не находит, повторяет с определенного момента.

2

Re: AHK: Поиск по фото

Опишите подробнее, а то можно по-разному понимать.

3

Re: AHK: Поиск по фото

Ну допустим так:
Я захожу на сайт, нажимаю клавишу, и у меня должно начать искать картинку, если программа нашла ее, то как мне сделать, что бы она выполняла команды дальше, а если не нашла, начала заного искать.
Я просто никак не могу разобрать с If, Else и Then. Я так понимаю, это осуществляется при помощи этих операторов.

4

Re: AHK: Поиск по фото

Как вариант, можно использовать указанные операторы. Но для поиска неопределенное число раз (до положительного результата) лучше искать в цикле.

F12::
   loop {
      WinGetPos,,, W, H, A
      ImageSearch, X, Y, 0, 0, W, H, C:\test.png
      if !ErrorLevel
         Break
      sleep 100
   }
   MsgBox % "Координаты:  x" . X "  y" . Y
Return

5

Re: AHK: Поиск по фото

Irbis пишет:

Как вариант, можно использовать указанные операторы. Но для поиска неопределенное число раз (до положительного результата) лучше искать в цикле.

F12::
   loop {
      WinGetPos,,, W, H, A
      ImageSearch, X, Y, 0, 0, W, H, C:\test.png
      if !ErrorLevel
         Break
      sleep 100
   }
   MsgBox % "Координаты:  x" . X "  y" . Y
Return

Спасибо! А последний вопрос, как сделать, что бы если не нашло картинку, то нажало бы на клавишу F5?
Я так понимаю нужно перед "Break" что-то написать?

6

Re: AHK: Поиск по фото

Desire пишет:

А последний вопрос, как сделать, что бы если не нашло картинку, то нажало бы на клавишу F5?

; ...
if !ErrorLevel
         Break
      else 
         SendInput {F5}
      sleep 5000
; ...

Обращаю внимание на параметр оператора Sleep - я поставил 5000 (5 секунд), вместо 100 в первоначальном варианте. Если число будет меньше того, которое нужно браузеру для обновления страницы, то скрипт никогда не увидит нужную картинку и будет бесконечно рефрешить страничку.