오토핫키 커뮤니티

조회 수 3791 추천 1 댓글 6

이것저것 돌아다니는거 썻습니다..


;check_reg는 이미지서치가 되었는지 안되었는지 판단하는 전역변수입니다. 전체코드에서 맨 앞에 써주세요.

;x,y좌표 변수입니다. 전역변수 저장

global check_reg := 0

global imgsearch_x = 0
global imgsearch_y = 0


CoordMode,Pixel,Client

;coordmode 이부분은 쓰고 한번 해보고 안쓰고 한번 해보세요... 전 일단 쓰고있는데 잘모르겠네요 ..ㅠ


Gdip_ImageSearchWithdHwnd(Hwnd,Byref X,Byref Y,Image,Variation=0,Trans="",sX = 0,sY = 0,eX = 0,eY = 0)
{
 Sleep, 500
SysGet, wFrame, 7
SysGet, wCaption, 4
gdipToken := Gdip_Startup()
bmpHaystack := Gdip_BitmapFromHwnd(Hwnd)
bmpNeedle := Gdip_CreateBitmapFromFile(Image)
if( sX!= 0 || sY!= 0 || eX!= 0 || eY != 0)
{
sX := sX + wFrame
sY := sY + wCaption + wFrame
eX := eX + wFrame
eY := eY + wCaption + wFrame
}
RET := Gdip_ImageSearch(bmpHaystack,bmpNeedle,LIST,sX,sY,eX,eY,Variation,Trans,1,1)
Gdip_DisposeImage(bmpHaystack)
Gdip_DisposeImage(bmpNeedle)
Gdip_Shutdown(gdipToken)
StringSplit, LISTArray, LIST, `,
X := LISTArray1
Y := LISTArray2

;여기에서 , 바로 밑 주석친걸로 하니 postMessage쪽이랑 좌표가 헷갈려서 전 바로 위 코드처럼 wFrame,wCaption 을

;안뺐습니다. 그리고 뭔가 값도 이상하더라구요... 물론 제기준
;X := LISTArray1 - wFrame
;Y := LISTArray2 - wCaption - wFrame
check_reg := RET
;GuiControl,,로그, %bmpHaystack%||%bmpNeedle%||%RET%
;msgbox, %X%,%Y%,%RET%
if(RET = 1)
{
return true
}
else
{
return false
}
}


IsImageCheck(ByRef ClickX, ByRef ClickY, CKImage, errorRange, trans, sX = 0, sY = 0, eX = 0, eY = 0)
{
 WinGet, Title, ID, [MOMO]앱플레이어
 If(Gdip_ImageSearchWithdHwnd(Title, ClickX, ClickY, CKImage, errorRange, trans, sX, sY, eX, eY))
 {
 return true
 }
}



그리고 , postMessage 부분입니다.


click(clickx, clicky) {

CoordMode, mouse, window

xx := clickx
yy := clicky - 36

;이부분이 , 비활성 이미지서치에서 좌표 따오는거에서 모모플레이어보면 맨 위 제목표시줄 만큼 y좌표를 빼는겁니다.
N := xx|yy<<16
PostMessage, 0x201, 1, %N%,TheRender,[MOMO]앱플레이어
PostMessage, 0x202, 0, %N%,TheRender,[MOMO]앱플레이어

}


사용예시입니다.


if(IsImageCheck(imgsearch_x, imgsearch_y, "예시.bmp",10,0))
{

    이미지서치가 되었을때 사용하는 부분

    click(imgsearch_x, imgsearch_y)
}

else if check_reg = 0
{

    이미지서치가 안되었을때 사용하는 부분
}


else if check_reg = 0 인 부분은,

저 값이 0이면 앱플레이어 화면인식은 되고, 해당 경로에 파일도 있는데 이미지를 못찼았을때 0으로찍힙니다.

경우마다 다른값이 출력되는데, 그건 구글형님이 자세히알려주시드라구요


이렇게 해야 이미지서치에서 저장한 이미지 좌표값과 postMessage에서 클릭하는좌표값이 일치하더라구요

아, 일치한다는 소리는 흔히 오토핫키에 같이 있는 좌표보는프로그램 아시죠?

그 프로그램의 Relative좌표랑 거의?일치합니다.

별의별짓 다해봤습니다... ㅠ


그리고 소스 공유해주시는분들 정말 감사합니다 (__)



List of Articles
분류 제목 글쓴이 최근변경 추천
질문 Gui 버튼 도움좀 부탁드립니다 2 모짱 2016.01.30 0/0
질문 이미지서치 스크립한번 봐주세요.. 1 일기 2016.02.07 0/0
자유 매크로 작동시간질문!! 4 박지민 2016.02.04 0/0
질문 디시인사이드 자바스크립트 cjh71 2016.01.29 0/0
질문 msg = %msg1%|%msg2% 여기서 | <- 뭘 뜻하죠?? 2 지니지니 2016.01.30 0/0
질문 이미지서치 범위지정 질문있습니다~ 5 페르니코 2016.01.31 0/0
자유 scite4autohotkey 라는 프로그램을 설치하니 다른건 다... 2 ddfa4 2016.02.01 0/0
질문 컨트롤+마우스 휠다운 1 stone 2018.02.20 0/0
질문 GUI 관한 질문이에요 ㅎㅎ 2 CHEKI 2016.02.02 0/0
질문 다수의 데이터 계산 비교 질문이요 5 은응 2018.12.30 0/0
질문 저기 정말 면몫없지만 핸콕님 매크로 설명서좀 구할수 ... 수퍼팜 2016.02.02 0/0
질문 도시락? 기능을 만드려면.... 3 CHEKI 2016.02.12 0/0
질문 PC버전 모비즌 질문입니다. 2 코렐디아 2016.04.10 0/0
질문 cpu청소? 1 석빡귀 2016.02.06 0/0
질문 안녕하세요 오토핫키 질문좀드릴께요 ㅠㅠ 2 쏘마아아아 2016.02.11 0/0
질문 즐거운 설 되시길 바랍니다 왜 메인컴에선 잘되는데 사... 5 소리없이 2016.02.11 0/0
질문 오토핫키에 대해서 질문이요! leejno 2016.02.07 0/0
질문 블루스택2는 포스트메세지가 안먹히나요? 3 슉슉이 2016.03.29 0/0
질문 txt 설정파일 수정하려고하는데요 2줄짜린데 안되네요 ... 2 검정다람쥐 2016.02.10 0/0
질문 오토핫키 단축키 관련 문의드립니다 1 김금메달 2016.02.13 0/0
Board Pagination Prev 1 ... 686970717273747576 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글