NGMsoftware

NGMsoftware
로그인 회원가입
  • 매뉴얼
  • 학습
  • 매뉴얼

    학습


    오토핫키 오토핫키 매크로 만들기. (마우스 클릭)

    페이지 정보

    본문

    안녕하세요. 엔지엠소프트웨어입니다. 이전 시간에 오토핫키를 이용해서 매크로를 만들기 위한 개발 환경을 구성했었습니다. 간단한 동작도 테스트를 했었구요. 아직 1부의 내용을 안보신 분들은 [ 여기 ]를 눌러서 개발 환경을 구성하고, 정상적으로 동작하는지 테스트 해보시기 바랍니다. 개발 환경이 구성되어 있어야 이 내용도 학습할 수 있으니까요^^; 자~ 비주얼 스튜디오 코드(VSCode)를 실행하고, 아래 동영상과 같이 오토핫키 스크립트를 하나 만드세요.

    fOWjGYy.gif

     

     

    Visual Studio Code 오토핫키 개발 도구

    간단한 테스트를 위해 아래와 같은 스크립트를 하나 만들고, 저장 후 실행 해보세요. 마우스가 현재 활성화되어 있는 클라이언트의 좌상단부터 100, 100의 위치를 클릭합니다.

    MouseClick, Left, 100, 100

    USGHOiS.gif

     

     

    오토핫키는 기본적으로 활성화되어 있는 창(Window)을 기준으로 좌표가 계산됩니다. 엔지엠 에디터는 절대 좌표로 이동하게 됩니다. 물론, 비활성 모드인 경우에는 상대 좌표로 계산되긴 하지만요. 엔지엠 매크로는 아래와 같이 바탕화면의 좌상단을 기준으로 100, 100 좌표를 클릭합니다.

    6WoR0A8.gif

     

     

    오토핫키는 마우스 좌표계를 아래와 같이 구분하고 있는데요. 이 내용을 이해하지 못하면 마우스 동작을 처리하는데 문제가 될 수 있습니다.

    • Screen: 모니터 기준
    • Window: 활성화된 창 제목 기준
    • Client: 활성화된 창 제목 제외 기준

     

    각각의 차이점을 확인하기 위해 CoodMode를 설정하고 테스트를 해보죠~ 아래 동영상은 CoodMode를 Screen과 Window를 번갈아가면서 테스트했습니다. Screen으로 설정하면 윈도우 모니터 기준으로 100, 100위치만 클릭합니다. 절대 좌표이기 때문이죠. 하지만, Window로 변경하고 실행하면 현재 활성화된 창을 기준으로 설정한 좌표로 이동됩니다. 그래서, Screen은 절대값(Absolute)으로 처리되고 Window, Client는 상대값(Relative)으로 처리되는걸 알 수 있습니다.

    lrVtucW.gif

     

     

    엔지엠 에디터는 핸들로 동일하게 처리가 가능합니다. 대부분의 비활성 기능을 제공하는 매크로 프로그램들이 동일한 방식을 사용합니다. 창의 위치가 변경되더라도 클릭 좌표를 창 기준으로 따라갑니다. 창이 다른창에 가려지더라도 클릭 입력이 해당 창으로 들어갑니다. 비활성 매크로 만드는 방법은 나중에 좀 더 자세하게 알아보도록 하겠습니다.

    dQtHK0i.gif

     

     

    코드를 아래와 같이 변경해도 동작은 동일합니다. "Mouse"를 입력하면 개발 도구(Visual Studio Code)에서 관련 기능들을 추천(Intellisense)해줍니다.

    CoordMode, Mouse, Screen
    F2::
    MouseMove, 100, 100
    MouseClick, Left

     

    기능을 선택하면 Syntax(신택스, 구문)를 표시해줘서 쉽게 개발할 수 있도록 가이드 해줍니다. 다른 편집기 도구와는 성능 자체가 다릅니다. 비주얼 스튜디오 코드에서는 아래와 같이 표시가 됩니다. 몇가지만 외우면 크게 어려운건 없을겁니다. 우선, 대괄호가 없는건 필 수 입력해야 하는 값입니다. X, Y가 되겠죠? 대괄호에 있는 항목들은 옵셔널(Optional, 선택적) 항목입니다. Speed와 R입니다. 스피드(Speed)는 속도를 나타내고 R은 Relative(상대값)입니다.

    MouseMove, X, Y [, Speed, R]

     

    각각의 옵션들을 설정하고 테스트 하면서 결과를 확인 해보세요. 엔지엠 에디터는 현재 위치 옵션을 통해 상대 좌표로 처리할 수 있습니다.

    TnIUabh.gif

     

     

    마우스 동작이 그렇게 다채롭거나 복잡한건 아니라서 이해하는데 크게 어려움은 없을겁니다. 엔지엠 에디터의 경우에는 마우스 트래킹이나 핸들 정보 찾는것들이 모두 컨트롤로 쉽게 처리할 수 있지만요. 오토핫키는 마우스 좌표를 찾으려면 별도 도구를 사용해야 합니다. 오토핫키를 설치하면 Window Spy가 같이 설치됩니다.

    ksn4fpv.png

     

     

    Window Spy를 실행하면 마우스 정보부터 해상도등등... 여러가지를 알 수 있습니다. 이걸 사용하면 원하는 위치에 마우스를 클릭할 수 있을거예요. 또한, 현재 해상도 정보와 선택한 윈도우 정보도 같이 출력해주기 때문에 나중에 비활성으로 매크로를 제작할 때 도움을 받을 수 있습니다. 마음에 여유를 가지고 천천히 하나씩 알아가보도록 하고~ 오늘은 이만 줄여야겠네요. 다음 시간에 다시 봐요^^

    IkYJnTV.png

     

     

    개발자에게 후원하기

    MGtdv7r.png

     

    추천, 구독, 홍보 꼭~ 부탁드립니다.

    여러분의 후원이 빠른 귀농을 가능하게 해줍니다~ 답답한 도시를 벗어나 귀농하고 싶은 개발자~

    감사합니다~

    • 네이버 공유하기
    • 페이스북 공유하기
    • 트위터 공유하기
    • 카카오스토리 공유하기
    추천0 비추천0

    댓글목록

    등록된 댓글이 없습니다.