키보드 / 마우스매크로프로그램설명서 Version 1.02 2012.8.28 양광웅작성 키보드 / 마우스매크로프로그램은키보드나마우스입력을자동화하기위한프로그램입니다. 이 프로그램은순차적으로입력되는키보드 / 마우스입력을기록해두었다가원하는시점에기록한 것을실행함으로단순한반복작업을줄여주거나윈도우의작업을일괄처리할수있도록합니다. 메인윈도우 프로그램을실행하면처음으로표시되는대화상자의기능을살펴보겠습니다. 대화상자의상단에두개의라디오버튼 전체매크로실행 과 실행중단과편집 이보이는데, 이두버튼이매크로를실행할지혹은편집할지를결정합니다. 전체매크로실행 이선택된경우는매크로추가나편집이불가능하며매크로를실행가능한모드로설정됩니다. 매크로를실행하는방법은시작단축키에의한방법과자동으로시작하는방법이있는데뒤에매크로편집부분에서자세히설명하겠습니다. 실행중단과편집 이선택된경우는 [ 기록 ], [ 추가 ], [ 편집 ], [ 삭제 ] 버튼이활성화되면서매크로를추가하거나편집할수있게됩니다.
두번째행에는사용자가작성한매크로를저장할파일이름을표시합니다. 다른저장된파일을읽어들이거나새로운파일로작성할때는 [ ] 버튼을눌러파일열기대화상자에서파일이름을선택하거나새로만들면됩니다. 만일새로운파일을열때는이전에작업중이던매크로는저장됩니다. 대화상자중앙에매크로목록이보이고매크로를기록하거나편집하기위한버튼들이있습니다. 버튼의이름만봐도어떤기능을하는지알수있을것입니다. [ 기록 ] 버튼을누르게되면새로운매크로이름이할당되면서사용자가입력하는키보드와마우스이벤트를기록하는대화상자가뜨게됩니다. [ 추가 ] 버튼을누르면빈매크로가열리면서사용자가하나하나키보드와마우스이벤트를추가할수있습니다. [ 편집 ] 버튼은이미작성된매크로를편집하는대화상자가열립니다. 그렇기때문에좌측매크로목록에서편집하고자하는매크로가선택되어있어야합니다. [ 삭제 ] 버튼은좌측매크로목록에서선택된매크로를삭제합니다. 버튼을누르자마자가차없이삭제하기때문에누르기전에정말삭제할것인지한번더머릿속으로생각해보시기바랍니다. 하단에 항상위 체크박스가하나있는데, 이체크박스를체크해두면프로그램이항상최상위 윈도우로떠있습니다. 마지막으로버전정보와이프로그램을다운받을수있는페이지링크가있습니다. 이제각버튼 이눌렸을때실행되는기능에대해설명해보겠습니다. 매크로기록 매크로기록대화상자는메인윈도우에서 [ 기록 ] 버튼을누름으로실행됩니다. 이대화상자는사용자가입력하는키보드와마우스이벤트를백그라운드에서기록하는기능을합니다. 즉, 사용자가키보드와마우스이벤트를일일이입력하지않아도프로그램이사용자가조작하는키와마우스신호를캐치하여기록합니다. 간단한예를하나들어보겠습니다. 윈도우그림판에서어떤그림을반복적으로그려야하는경우가있다고가정해보겠습니다. 이런경우가정말있을지모르겠지만예를들기위한것입니다. 사용자는먼저윈도우그림판을연후, 마우스를이리저리움직이고클릭하여그림을완성해나갈것입니다. 매크로기록은사용자가그림을그릴때발생하는마우스이벤트를낚아채모두기록해둡니다. 그리고새로운그림판을열고기록된매크로를실행하면똑같은그림이그려질것입니다. 아래대화상자를보면서매크로기록에대해설명하겠습니다.
제일상단에 F12 키를눌러매크로기록을시작하거나중지합니다. 라는텍스트가적혀있는데, 말그대로매크로기록을시작하기위해서키보드의 F12 키를누르면됩니다. 그러면기록상태가 [ 대기중 ] 에서 [ 매크로기록중 ] 으로바뀌면서입력되는키보드와마우스이벤트를차근차근기록하게됩니다. 매크로기록을종료할때는 F12키를한번더누르면됩니다. 좌측리스트박스에는기록된키보드와마우스이벤트들이순차적으로표시됩니다. 우측에는기록옵션을설정하는체크박스가있는데, 각각에대해서설명드리겠습니다. 키보드키 체크박스가체크된경우는, 사용자가키보드에서누르는키들중에서 F12키를제외한모든키입력을기록합니다. 마우스버튼 체크박스가체크된경우는, 사용자가마우스에서좌측, 중앙, 우측버튼을누르는경우마우스버튼상태와커서의위치를함께기록합니다. 마우스움직임 체크박스가체크된경우는, 마우스버튼이눌리지않은상태에도마우스의움직임 ( 커서의위치 ) 을기록합니다. 시간 체크박스가체크된경우는, 마우스나이벤트가발생하는시간간격을측정하여시간지연으로기록합니다. 즉, 각각의이벤트사이에시간지연이항상들어가게됩니다. 그럼으로사용자가입력한시각이중요할때사용하면됩니다. 매그로기록대화상자에서기록한매크로는매크로이름이나시작단축키, 중지단축키가디폴 트값으로설정됩니다. 그렇기때문에매인윈도우로돌아가서 [ 편집 ] 버튼을눌러이값들을사 용자가원하는값으로변경하여야합니다. 매크로추가 매크로추가대화상자는메인윈도우에서 [ 추가 ] 버튼을누르면실행됩니다. 이대화상자는빈 매크로가열리면서사용자가일일이키보드와마우스이벤트를직접추가할수있습니다.
자세한설명은대화상자를보면서설명하겠습니다. 제일상단에매크로이름을설정하는박스가있습니다. 여기에는사용자가매크로를구분할수 있도록적당한이름을붙여주면됩니다. 매크로이름은서로중복되어도괜찮습니다. 두번째와세번째열에는시작단축키와중지단축키를설정하게되어있습니다. 시작 / 중지단축키는전체매크로실행모드에서각각의매크로를시작하거나중지하기위한단축키입니다. 시작과중지단축키가같은키로지정된경우는매크로실행이토클되는데, 단축키를한번눌렀을때는매크로가실행되고, 매크로실행중인상태에서단축키를한번더누르게되면매크로실행이중지됩니다. 매크로실행이완료된상황에서단축키를누른다면매크로가다시시작됩니다. 시작 / 중지단축키는마우스로드랍리스트를내려서선택하면됩니다. 만일, 사용자가키보드의어떤키가리스트의어떤항목과일치하는지를모를때는시작이나중지단축키드랍리스트에포커스를두고직접키보드의키를누르면드랍리스트에서누른키가선택됩니다. 여기서윈도우를조작하는 Esc와같은키는예외적으로동작합니다. 중앙에는작성된매크로의이벤트들이순차적으로표시되고오른쪽옆에는각이벤트를추가하거나삭제하기위한버튼이있습니다. 버튼들중 [ 키보드추가 ], [ 마우스추가 ], [ 지연추가 ] 버튼은좀있다설명하고 [ 삭제 ] 버튼은말그대로선택된이벤트를삭제하기위한버튼입니다. 누르면좌측목록에서선택된이벤트를가차없이삭제합니다.
제일하단에 매크로반복 과 전체매크로실행과함께자동시작 체크박스가있는데, 매크로반복 체크박스가체크된경우는매크로실행의끝에도달하였을때다시처음으로돌아가매크로를계속반복실행합니다. 이반복실행은중지단축키를누르는경우중지됩니다. 전체매크로실행과함께자동시작 체크박스가체크된경우는메인윈도우의 전체매크로실행 라디오버튼이선택될때해당매크로가같이실행됩니다. 이제키보드와마우스이벤트를추가하기위한버튼들에대해살펴보겠습니다. 대화상자중앙의 리스트박스옆에이벤트를추가하기위한버튼들이보입니다. [ 키보드추가 ] 버튼을누르면다음 과같은대화상자가실행됩니다. 키보드추가대화상자의드랍리스트에서직접키를선택하거나드랍리스트에포커스를두고직접키보드의키를누르면됩니다. 라디오버튼중 누르고떼기 는키를누르는이벤트와떼는이벤트를순차적으로발생시킵니다. 누르기, 떼기 는키를누르거나떼는이벤트를각각한번씩발생시킵니다. 다시매크로추가대화상자로돌아와서 [ 마우스추가 ] 버튼을누르면다음과같은대화상자가실 행됩니다.
대화상자상단의마우스현재위치는화면좌측상단을원점으로하는픽셀좌표값입니다. 필요 하다면이값을참조하여마우스의위치를설정하시면됩니다. 절대위치 체크박스와마우스의 X, Y 좌표값을설정하는박스가보이는데, 만일마우스를특정 위치로이동하고자할경우체크박스를체크하고이동하고자하는포인트의 X, Y 좌표값을설 정하면됩니다. 하단의왼쪽버튼, 중앙버튼, 오른쪽버튼그룹에서 ( 없음 ), 클릭, 누르기, 떼기 를각각선택할 수있는데, 마우스의버튼이벤트를지정하는데사용됩니다. 다시매크로추가대화상자로돌아와서 [ 지연추가 ] 버튼을누르면다음과같은대화상자가실행 됩니다. 이대화상자에서는이벤트와이벤트사이에시간지연이필요한경우시간지연을설정합니다. 시간의단위는 초 이고범위는 0.001 ~ 3600 초사이값입니다.
매크로편집 매크로편집대하상자는메인윈도우에서매크로목록중하나를선택하고 [ 편집 ] 버튼을누르면실행됩니다. 매크로편집대화상자는매크로추가대화상자와모양이같습니다. 다른점이라곤이미작성된매크로가있다는것입니다. 그래서따로설명하지는않겠습니다. 매크로추가대화상자에대한설명을참고하시기바랍니다.