오토핫키 커뮤니티

F2::

WinGetActiveTitle, Genymotion

px:=795
py:=467
pm:=px|py<<16

PostMessage, 0x201, 1, %pm%,, %Genymotion%
PostMessage, 0x202, 1, %pm%,, %Genymotion%

return

SciTE4AutoHotkey 으로 작성 중이고요

Active Window info창을 통해서 대충 점을 찍을 좌표를 얻었습니다.

테두리와 타이틀바를 통해 정확한 좌표를 찍어야 되는 부분은 알지만

대충 위치만 얻고 좌표를 찍어도 비슷한 위치에 점이 찍어질 것 같아서

위와 같이 작성해서 그림판을 최대화하여 찍어보려고 하는데 점이 찍히지가 않네요...


무슨 문제인지 고수님들 도와주세요

아무리 찾아봐도 해답이 보이지 않아요 ㅠㅠ



  • Hangoon 2015.03.10 22:59

    그림판이라면 윈도우 그림판 말씀하시는건가요?

    지니모션으로 테스트해보세요~

    지니모션으로 스케치북 앱이나 그림판 앱 받으셔서 켜놓으시고

    수동으로 한점 클릭할때 점이 잘보이도록 세팅하시고?테스트하시면 보기 편하실겁니다

  • 로켓맨 2015.03.11 16:32
    그림판 앱을 받아서 진행해 보았더니 잘되네요
    근데 윈도우 그림판에서 테스트할때는 안되더라고요
    조언 덕분에 잘 해결되었는데 윈도우 그림판에서 안된 이유가 뭘지 갑자기 궁금해지네요^^
  • 몽이 2015.03.10 23:46
    저는 postmessage에 control(class_NN) 값을 추가하여 해결했습니다.

    PostMessage, 0x201, 1, %pm%, class_NN값, %Genymotion%
    이런식으로요.

    다만, spy에서 얻은 class_NN 값으로는 인식이 안되서

    마우스아래 위치한 윈도우의 control 정보 추출 함수 작성 후
    단축키에 할당하여 수동으로 뽑아(?) 셋팅하도록 처리했습니다.

    고수님들은 어떻게 처리하는지 참 궁금합니다. :)

    허접하지만 도움이 되셨으면 합니다.

    참고로 몇군데 나눠져 있던 소스를 긁어모은거라?
    손은 좀 보셔야합니다.


    ^g::
    {
    ;control,초기좌표 얻기 및 맴버변수 셋팅
    initControlInfo()
    }
    return


    mouseDrag(x,y,x1,y1) {
    global CLASS_NN, WINDOW_TITLE
    p1:=postXy(x,y)
    p2:=postXy(x1,y1)
    xy1 := p1.xy
    xy2 := p2.xy
    PostMessage,0x201,1, xy1, %CLASS_NN%, %WINDOW_TITLE%
    sleep 100
    PostMessage,0x200,1, xy2, %CLASS_NN%, %WINDOW_TITLE%
    sleep 100
    PostMessage,0x202,0, xy2, %CLASS_NN%, %WINDOW_TITLE%
    sleep 100
    }

    mouseClick(x,y) {
    global CLASS_NN, WINDOW_TITLE
    p1:=postXy(x,y)
    PostMessage,0x201,, p1.xy, %CLASS_NN%, %WINDOW_TITLE%
    PostMessage,0x202,, p1.xy, %CLASS_NN%, %WINDOW_TITLE%
    }


    initControlInfo() {?
    global CONTROL_LEFT_X, CONTROL_LEFT_Y, CLASS_NN, WINDOW_ID, WINDOW_TITLE, CURRENT_X, CURRENT_Y
    ;ClassNN 및 해당 ClassNN의 시작좌표 구하기
    ;(상대좌표-컨트롤시작좌표 = 컨트롤좌표)
    MouseGetPos, x, y, windowId, classNN, 1
    ControlGetPos, controlLeftX, controlLeftY, controlWidth, controlHeight, %classNN%, ahk_id %windowId%
    ;윈도우 타이틀
    WinGetTitle, windowTitle, ahk_id %windowId%
    ?
    ;비활성화창 상대좌표 구하기
    MouseGetPos, XA,YA,WinIDH,ControlH
    Coordmode, Mouse, Relative
    MouseGetPos, XARel,YARel

    Coordmode, Mouse, Screen
    MouseGetPos, XAbs,YAbs
    WinIDA := WinActive()
    DRel := Abs(XA-XARel) + Abs(YA-YARel)
    DAbs := Abs(XA-XAAbs) + Abs(YA-YAAbs)
    If (DRel < DAbs)
    Coordmode Mouse, Relative
    If (WinIDH <> WinIDA)
    {
    WinGetPos, XWH, YWH, , , ahk_id %WinIDH%
    XHRel := XAbs - XWH
    YHRel := YAbs - YWH
    }
    ;맴버변수에 값 셋팅
    CONTROL_LEFT_X := controlLeftX
    CONTROL_LEFT_Y := controlLeftY
    CLASS_NN := classNN
    WINDOW_ID := windowId
    WINDOW_TITLE := windowTitle
    CURRENT_X := XHRel
    CURRENT_Y := YHRel
    }


    postXy(x, y) {
    global CONTROL_LEFT_X, CONTROL_LEFT_Y
    result := {}
    result.x:=x-CONTROL_LEFT_X ;control의 실제시작좌표
    result.y:=y-CONTROL_LEFT_Y
    result.xy:=result.x|result.y<<16
    return result
    }
  • 로켓맨 2015.03.11 16:34
    그림판앱을 이용했더니 잘되네요
    달아주신 엄청난 소스는 참고하여 공부하도록 하겠습니다.
    긴 댓글 달아주셔서 감사합니다~
  • 몽이 2015.03.10 23:51

    아..그리고

    테스트 하실 땐 마우스드래그로 확인 하시면 편합니다.

    (지니모션 > 게임 내 드레그되는 화면에서..)

    성공하시길!


List of Articles
분류 제목 글쓴이 최근변경 추천
질문 PostMessage 그림판에 테스트하는데 점이 안찍히는데 ... 5 로켓맨 2015.03.11 0/0
질문 겜도리님 소스중에 창설정시 창화면 변하지 않게 하는 ... 7 낭군이 2015.03.11 0/0
자유 헐.... 1 GOLD 2015.03.10 0/0
자유 월요일이네요!! 1 안양_문군 2015.03.09 0/0
질문 loop문 땡땡시간경과후 탈출하기 질문입니다. 2 올드휴고 2015.03.15 0/0
질문 if문을 딱한번만 실행시킬수없나요? 4 GOLD 2015.03.12 0/0
질문 +Backgroundtrans의 뜻을 한글로 설명해주세요 2 GOLD 2015.03.11 0/0
질문 if 문법 질문합니다. 2 skftk 2015.03.07 0/0
질문 다른사람이 만든 프로그램 스크립트를 볼 수 있는 방법... 3 빈스3678 2015.03.08 0/0
질문 loop 명령문 이렇게 쓰는거 맞나요? 6 언제나ing 2015.03.09 0/0
질문 포스트메세지 비활성클릭... 자꾸 물어봐서 죄송합니다... 18 투혼레몬 2015.03.06 0/0
질문 시간경과 프로그램만들어봣는데 안되네요 6 GOLD 2015.03.06 0/0
질문 버튼반응문제 해결되지않아 다시질문합니다 5 GOLD 2015.03.06 0/0
자유 쿠키런 매크로 없나요? 2 펄엔젤 2015.03.13 0/0
질문 어제올린 질문인데 다시씁니다.. 5 후루룹 2015.03.05 0/0
질문 도와주세용 이미지서치후 다시 이미지 서치할떄... 3 소리없이 2015.03.05 0/0
질문 이미지 2개를 찾는반복은 어떻게하나요? 7 후루룹 2015.03.27 0/0
질문 이미 한 선언을 바꿀수는 없나요? 6 GOLD 2015.03.04 0/0
질문 ControlSetText 질문 입니다~ 2 HyunYu 2015.03.03 0/0
질문 사용자 계정 컨트롤 경고창은 어떻게 넘기나요? 4 언제나ing 2015.03.04 0/0
Board Pagination Prev 1 ... 179180181182183184185186187 ... 209 Next
/ 209

전체 최신 인기글

전체 주간 인기글