AutoHotKey를 사용하는 사람들
오늘: 512
어제: 547
전체: 199,709
회원: 1,877
접속: 26 (회원 2)

AutoHotKey 회원강좌

 

AutoHotkey에 대해 회원들이 직접 작성한 강좌를 올리는 곳입니다. 자신만의 팁을 공유해 주세요. ^^

 
작성일 : 10-01-20 22:56
허접한 초보용 강좌 2
 글쓴이 : DRAGONLv.14
조회 : 2,190   추천 : 5   비추천 : 0  

AHK 기초편 2 응용

마우스의 위치를 알아보자
1편에서 spy를 이용하여 마우스의 스크린상의 좌표와,활성창의 좌표알아냈었습니다.
이번엔 spy에 의존하지 않고 만들어서 해보도록 하죠.

F1::
coordmode, mouse, screen                ; mouse의 좌표를 스크린에 기준
mousegetpos, mouseX, mouseY         ; 마우스 x,y좌표를 변수 mouseX,mouseY에 대입
msgbox, x=%mouseX% y=%mouseY% ; msgbox로 %mouseX% %mouseY% 출력
return

F2::
coordmode, mouse, relative                ; mouse의 좌표를 활성창에 기준
mousegetpos, mouseX, mouseY
msgbox, x=%mouseX% y=%mouseY%
return

F1을 누르면 스크린상의 x,y좌표가 메시지박스로 표시됩니다.
F2를 누르면 활성된 창기준의 x,y좌표가 메시지박스로 표시됩니다.

*coordmode
 CoordMode, ToolTip|Pixel|Mouse|Caret|Menu [, Screen|Relative]
 Pixel
 PixelGetColor와 PixelSearch,ImageSearch그리고 사용하는 좌표
 Mouse
 MouseMove,MouseClick,MouseClickDrag,MouseGetPos그리고 사용하는 좌표
 Screen
 스크린상에서의 절대 좌표
 Relative
 액티브 윈도우의 좌상으로부터의 상대 좌표

*mousegetpos
 마우스가 위치하고 있는 상태를 얻어낸다.
 mousegetpos,x,y 
 (창정보를 얻는다 마우스 아래의 핸들과 컨트롤을 얻을수 있으나 초보자를 대상으로하여 생략)


화면의 픽셀값을 알아보자 (일정점의 색값)

F1::
coordmode, pixel, screen         ;픽셀값얻는 좌표의 기준을 스크린에 지정
pixelgetcolor, color, 100,100      ;color라는 변수에 화면의 100,100지점의 색을 대입한다
msgbox, %color%
return

F2::
coordmode, pixel, relative        ;픽셀값얻는 좌표의 기준을 활성창에 지정
pixelgetcolor, color, 100,100
msgbox, %color%
return

F1을 실행하면 모니터 좌상부분의 100,100의 색값을 얻는다.
F2를 실행하면 활성된 창의 좌상부분 기준 100,100의 색값을 얻는다.


응용-마우스가 위치한곳의 좌표와 색값을 얻어보자.
F1::
coordmode, mouse, screen                                     ; mouse의 좌표를 스크린에 기준
coordmode, pixel, screen                                        ;픽셀값얻는 좌표의 기준을 스크린에 지정
mousegetpos, mouseX, mouseY                               ; 마우스 x,y좌표를 변수 mouseX,mouseY에 대입
pixelgetcolor, color, %mouseX%, %mouseY%            ;color라는 변수에 현재 마우스 x,y지점 색값을 대입
msgbox, x=%mouseX% y=%mouseY% color=%color% ; msgbox로 %mouseX% %mouseY% %color% 를 보여준다.
return

F1을 누를시 메시지박스로 현 마우스의 좌표와 (스크린기준) 색값을 얻을수 있다.
위에서 언급한 두가지를 합쳐놓은것일 뿐이죠.


응용-마우스를 움직이다가 마우스가 검은색에 위치하게 되면 msgbox가 뜨게 만들어보자(스크린기준)
F1::
coordmode, pixel, screen                                           ;mouse의 좌표를 스크린에 기준
coordmode, mouse, screen                                        ;픽셀값얻는 좌표의 기준을 스크린에 지정
loop                                                                         ;반복시작
{
mousegetpos, mouseX, mouseY                                  ;마우스 x,y좌표를 변수 mouseX,mouseY에 대입
pixelgetcolor, color, %mouseX%, %mouseY%
   if color = 0                                                             ;만약 color가 검은색(0) 이라면 아래 {} 실행(없으면 패스)
   {
   msgbox, 검은색 발견 좌표 %mouseX%,%mouseY%  ;msgbox
   break                                                                   ;만약 검은색을 발견하면 if구문이 발동하면서 break명령에따라 반복구문이 종료
   }
}                                              ;반복종료


F1을 누르면 coordmode가 우선적 실행이됩니다. 좌표기준을 일단 정해주고
반복문이 실행이됩니다. 마우스 현재위치의 색값을 얻고 if=0 에 만족할시 msgbox와 함께
break명령이 들어있어 반복이 종료 됩니다.
만약 검은색을 찾지 못하면

mousegetpos, mouseX, mouseY                   
pixelgetcolor, color, %mouseX%, %mouseY%
   if color = 0                               
   {
   msgbox, 검은색 발견 좌표 %mouseX%,%mouseY% 
   break                                      
   }

이부분이 검은색을 찾을때까지 무한반복 됩니다.

 

허접하게 만든 강좌 읽어주셔서 감사합니다 (--)(__)
정작 여러사람이 묻는 이미지 서치를 다루지 않았군요.. 쿨럭..

비추천 : 0
추천 : 5

       허준호Lv.2 / 2010-02-03 13:13

잘봤습니다! 완전 감사합니다!

       AHsK현수Lv.10 / 2010-07-30 15:06

하앜 호응이 없네요.. 추천


 
 

 
Total 50
번호 제   목 글쓴이 날짜 조회 추천 비추천
[내장변수모음] 함께 만들어가는 내장변수 모음집 (9) 관리자Lv.100 11-20 3101 0 0
50 처음오신분을 위한 강좌요. (5) eocndLv.13 08-09 1171 2 9
49 Fn 키를 레지스트리나 오토핫키로 remapping하는 게 안 되는 이유 (3) 한빈Lv.2 08-06 346 3 0
48 쉬프트 키 오류 해결방법입니다. (2) 가나다마Lv.1 08-05 316 0 0
47 무료 아이콘 사이트 (6) 여유Lv.20 05-30 890 2 0
46 오토핫키 함수(Function)에 대한 팁 (7) 운장Lv.17 05-24 1714 5 0
45 [동영상] 초보입문 - 초간단 Imagesearch 활용 (11) 베르바Lv.13 05-20 1709 3 0
44    [동영상] 초보입문 - 초간단 Imagesearch 활용(Full 파일복구) (6) 베르바Lv.13 08-10 538 3 0
43 IF 사용시 오류나시는분들 보셔요 (6) 운장Lv.17 05-18 787 2 0
42 서브루틴을 자유자재로 다뤄보자! (6) eocndLv.13 05-17 764 0 9
41 Loop에 관한 마구잡이 팁... (7) 운장Lv.17 05-15 1215 2 0
40 GUI 를 이용한 변수 강좌. (if도 강좌) (3) 강쥐Lv.8 05-01 992 0 0
39 랜덤으로 .. 구이의 픽쳐를 바꾸는강좌. {동영상} (6) eocndLv.13 03-24 916 3 0
38 [AHK 도움말] 한글 번역판 (7) 베르바Lv.13 03-22 1575 1 0
37 [동영상] 초보입문 - Gui 만들기, Edit 창 활용 (12) 베르바Lv.13 03-22 1634 5 0
36    [동영상] 초보입문 - Gui 만들기, Edit 창 활용(파일복구) 베르바Lv.13 08-10 294 1 0
 
 
 1  2  3  4  

 

Copyright Tleap. All rights reserved.