동일 이미지를 모두 찾는 멀티 이미지서치 예제 스크립트 입니다.

 

테스트 실행 GIF 이미지

 

[테스트 스크립트]

Test_멀티서치.ahk 파일을 다운로드한  'Ahk+ 전용 AutoHotkey.exe 파일'  위에 드래그해서 실행하세요.

멀티서치_테스트.zip
0.00MB

#SingleInstance Force

Hotkey, ESC, ExitApp

검색테이블 := "검색테이블.png"
검색이미지 := "검색이미지.png"

MsgBox, 이미지서치 테스트를 위해 '%검색테이블%' 이미지를`n그림판으로 열어야 합니다.
Run, mspaint.exe "%검색테이블%",,, pid
sleep, 100

if pid
{
  WinWait, ahk_pid %pid%,, 5
  if foundWin := WinExist("ahk_pid " pid)
    sleep, 300
}

if foundWin
{
  ;열려있는 그림판 윈도우에서 이미지 멀티서치 (반환 좌표는 찾은 이미지의 센터 좌표)
  ImageSearch, sx,sy, 0,0,800,800, *All *ResultCenter %검색이미지%, result
  if ErrorLevel {
    MsgBox, 그림판 윈도우에서 '%검색이미지%' 이미지를 찾는데 실패하였습니다.
    ExitApp
  }
  
  ;찾은 좌표 출력
  loop % result.count
    text .= A_Index " : " result[A_Index].x "," result[A_Index].y "`n"
  MsgBox % "그림판 윈도우에서 '" 검색이미지 "' 이미지를 " result.count "개 찾았습니다.`n`n" text
  
  ;그림판 윈도우에서 단축키를 이용해 채우기 툴 선택
  WinActivate, % "ahk_pid " pid
  Send, {Alt Down}h{Alt Up}
  sleep, 100
  Send, k
  
  ;찾은 좌표 마우스로 추적
  loop % result.count
  {
    MouseClick, Left, % result[A_Index].x, % result[A_Index].y
    sleep, 500
  }
  MsgBox, 멀티서치 테스트 완료
}
else
  MsgBox, %검색테이블% 이미지를 그림판으로 여는데 실패했습니다.
ExitApp

ExitApp:
ExitApp

 

Posted by 와이로