[Ahk] 비활성 입력 총정리
by #독개#비활성 입력에는
PostMessage , Controlsend, Controlclick 이렇게 3개가 있다
Title이라고 적은 부분은
아무거나 적으면 된다
PostMessage (키보드)
PostMessage, 0x100, 27 , 65537 ,, ahk_exe On32.exe ;누름
sleep,100
PostMessage, 0x101, 27 , 65537 ,, ahk_exe On32.exe ;뗌
27과,65537은 ESC의 Param 값이다
위의 코드는 온라인삼국지2에 ESC키를 비활성으로 입력하는 예시다
PostMessage(마우스)
PostClick(FoundX,FoundY){
lparam:=FoundX|FoundY<<16
PostMessage,0x201,1,%lparam%,,ahk_exe Code.exe ;누름
Sleep, 100
PostMessage,0x202,0,%lparam%,,ahk_exe Code.exe ;뗌
}
마우스클릭은 좌표를 Param 16진수 값으로 계산해야 하므로 이렇게 함수를 정의해서 사용하는 것이 좋다
PostClick(100,100) 하게되면 Code.exe에 100,100을 클릭한다
Windowspy의 client의 마우스좌표다
ControlClick
ControlClick, x100 y100,ahk_exe Code.exe,,,,D,NA ;누름
sleep,100
ControlClick, x100 y100,ahk_exe Code.exe,,,,U,NA ;뗌
ControlClick, x39 y75,ahk_exe dm.exe,,,,NA ;누르고뗌
controlclick,x39 y75,ahk_exe dm.exe ;활성화시키면서클릭
;이렇게하면 함수로 적용가능
Mleft(39,75,"ahk_exe dm.exe")
Mleft(x,y,c)
{
ControlClick, x%x% y%y%,%c%,,,,NA ;누름
}
x100 y100이 들어가는곳에 ClassNN값을 넣으면 좌표대신 ClassNN컨트롤을 클릭한다
좌표는 Spy의 Window를 하면된다 Client아니다
컨트롤클릭은 Coord모드의 영향을안받는다
ControlSend
InactiveKey(key) {
ControlSend,Edit1,{%key% down},ahk_exe notepad.exe ;Edit1은 ClassNN
sleep,100
ControlSend,Edit1,{%key% up},ahk_exe notepad.exe ;Edit1은 ClassNN
return
}
역시 함수로 만들어 사용하는것이 좋다
InactiveKey("a")
'🔥 프로그래밍 학습 > AutoHotkey' 카테고리의 다른 글
[오토핫키] 공인ip, 사설ip 얻어오기 (0) | 2023.02.18 |
---|---|
[오토핫키] HotKey List 핫키 완벽정리 (0) | 2022.12.29 |
VS Code 에서 AHK+ 실행의 구조 (0) | 2022.11.12 |
[오토핫키] - 게임에서 입력 안될때 해결법 (1) | 2022.11.12 |
[오토핫키] AHK에서 아두이노 사용하기 (1) | 2022.11.02 |
블로그의 정보
독한 개발자
#독개#