AutoHotKey(오토핫키) 설명서 Hotkey

Posted by 발전소장
2014. 8. 14. 01:11 AutoHotKey/Commands

Hotkey

스크립트 실행중에 hot key를 할당하거나 설정을 변경하거나 한다

Hotkey, KeyName [, Label, Options]
Hotkey, IfWinActive [, WinTitle, WinText]
Hotkey, IfWinExist [, WinTitle, WinText]
Hotkey, IfWinNotActive [, WinTitle, WinText]
Hotkey, IfWinNotExist [, WinTitle, WinText]

Parameters

인수명설명
KeyName hot key 정의그리고 사용하는 키명.
벌써 설정되어 있는 hot key의 경우, 이하의 인수에 근거해 설정이 변경된다.
이 때, 대문자 소문자의 차이나 「^!c」와「!^c」(와)과 같은 수식 키 기호의 차례의 차이는 무시된다.
IfWin...서브 커멘드에 의한 조건의 설정이 유효의 경우, 그 조건하에서의 액션이 설정·갱신된다.
Label hot key 입력시에 실행시키고 싶은 라벨명.hot key 라벨도 가능.뒤의 「:」(이)나 「::」(은)는 포함하지 않는다.
벌써 등록되어 있는 hot key의 경우, 여기를 비우는 것으로, 다른 설정만을 변경할 수 있다.
라벨명 외에 이하의 것도 설정할 수 있다.
On
Off(으)로 한 hot key를 재차 유효하게 한다
Off
hot key를 무효로 한다
Toggle
무효와 유효를 바꾼다
AltTab타
각종AltTab액션(을)를 할당한다
Options 이하의 옵션의 편성.
반각 스페이스에서 단락지어도, 전부 연결하고 써도 괜찮다.
UseErrorLevel
어떠한 문제가 발생했을 때, 에러 다이얼로그를 표시하지 않고, 후술의ErrorLevel변수에 값을 대입해 처리를 속행한다
On
정지되고 있는 hot key의Label할당을 갱신하면서, 재차 유효하게 하고 싶을 때에 지정한다.
Off
hot key를 무효로 한다.Label(을)를 할당하면서 무효로 하고 싶을 때에 사용한다.
B
#MaxThreadsBuffer(와)과 같은 버퍼 처리를 실시한다.
B0
버퍼 처리를 실시하지 않는다
Pn
n에스렛드의 우선도(을)를 지정.예를 들면 「P3」
Tn
n에 스렛드수의 상한을 지정.#MaxThreadsPerHotkey그리고 지정하는 것과 같다.
IfWinActive, IfWinExist, IfWinNotActive, IfWinNotExist hot key가 동작하는 조건을 설정한다.
이 서브 커멘드로 조건을 변경하면, 이후에Hotkey커멘드로 hot key에 할당할 수 있었던 액션은, 그 조건에 일치하는 경우만 동작하게 된다.
조건의 자세한 것은#Ifwin...지령의 항을 참조.
WinTitle, WinText 윈도우의 타이틀, 텍스트의 조건을 지정한다.
「Hotkey,IfWinActive」(와)과 같이 이 인수를 비워 실행하면, 「조건 없이 」로 설정된다.

ErrorLevel

IfWin..,계 서브 커멘드를 사용했을 경우, 설정에 성공하면0, 어떠한 문제가 발생했을 경우1(이)가 된다.

UseErrorLevel옵션을 사용했을 경우, 문제가 없으면0, 문제가 있었을 경우는 이하의 어떤 것인가가 된다.

1
Label인수로 지정된 라벨이 존재하지 않는다
2
KeyName파라미터로 지정된 키가 현재의 시스템으로 사용할 수 없는지, 원래 존재하지 않는다
3
「WheelUp & MButton」(와)과 같이, 콤비네이션 키의 프리픽스 키에 사용할 수 없는 키를 지정했다
4
AltTab(이)나ShiftAltTab에 단독의 키를 할당하려고 했다(이러한 기능에는,2개이상의 키로부터 되는 hot key를 할당할 필요가 있다)
5
설정되어 있지 않은 hot key의 설정을 갱신하려고 했다
6
hot key는 설정되어 있지만, 현재의 「IfWin...」조건하의 액션이 설정되어 있지 않을 때로 설정을 갱신하려고 했다
50
등록하려고 한 hot key가 다른 어플리케이션으로 사용되고 있어 등록할 수 없었다(Windows9x계만)
51
Windows9x계에서는 사용할 수 없는 hot key를 설정하려고 했다
98
설정할 수 있는 hot key수의 상한700개를 초과했다
99
빈메모리가 부족하고 처리에 실패했다

KeyName(와)과UseErrorLevel옵션만을 지정하는 것으로써, 그 hot key가 설정되어 있는지 어떤지를 조사할 수 있다.

Hotkey, ^!p,, UseErrorLevel
if ErrorLevel in 5,6
	MsgBox The hotkey does not exist or it has no variant for the current IfWin criteria.

Remarks

이 커멘드로 할당하는 것보다, hot key 라벨로 해서 정의하는 것이 효율이 좋다.
이 커멘드는, 스크립트로 동적으로 할당을 변경하고 싶은 경우 등에 마셔 사용한다.

하나의 라벨을 복수의 hot key에 할당할 수도 있다.
이 경우,%A_ThisHotkey%변수로 어느 hot key가 밀렸는지를 알 수 있다.

이 커멘드로 만들어진 hot key도,Suspend커멘드로 정지할 수 있다.

이 커멘드로 hot key를 등록·무효화했을 경우,키보드 훅(이)나마우스 훅(은)는 자동적으로 유효·무효가 된다.

이 커멘드로 hot key를 작성하면, 스크립트는 자동적으로 상주가 된다.

Related

#Ifwin..., Hotkey Symbols, #MaxThreadsBuffer, #MaxThreadsPerHotkey, Suspend, Threads, Gosub, Return, Menu, SetTimer

Example(s)

Hotkey, ^!z, MyLabel
return

MyLabel:
MsgBox You pressed %A_ThisHotkey%.
return

; Other examples:
Hotkey, RCtrl & RShift, AltTab ; Makes RCtrl & RShift operate like Alt-Tab.
Hotkey, #c, On
Hotkey, $+#c, Off
Hotkey, ^!a, , T5 ; Change the hotkey to allow 5 threads.

Hotkey, IfWinActive, ahk_class Notepad
Hotkey, ^!c, MyLabelForNotepad


AutoHotKey(오토핫키) 설명서 Gui,Add,Hotkey

Posted by 발전소장
2014. 8. 14. 00:54 AutoHotKey/Commands

Gui,Add,Hotkey

GUI윈도우에 키보드 쇼트 컷의 편성을 입력하기 위한 컨트롤을 추가한다

Gui, Add, Hotkey [, Options, Text]

Parameters

인수명설명
Options 옵션을 반각 스페이스 단락으로 열거.
Gui,Add의 항참조.
G그리고 써브루틴 라벨을 설정하면, 입력된 hot key가 변경될 때마다 실행된다.
입력 내용이 수식 키만 상태에서도 실행된다.(다만, 수식 키를 떼어 놓아 버리면 「없이 」로 돌아와 버리기 위해, 취직 키만의 hot key가 입력된 상태대로 할 수 없다)
이 때, 새롭게 키가 눌러 내릴 수 있어 내용이 변화했을 때에는 써브루틴이 실행되지만, 키가 떼어 놓아지는 것에 의해서 내용이 변화했을 때에는 실행되지 않는다.
고유의 옵션으로서Limit하지만 있다.
Text 초기 상태로 입력되고 있는 키를 지정한다.

고유의Option

LimitN
Hotkey그리고 입력 금지로 할 수 있는 수식 키의 조를 설정한다.금지되고 있는 조를 입력하려고 하면, 대신에Ctrl+Alt의 조가 부가된다.
N에는 이하의 수의 화를 설정한다.
1
수식 키 없음을 금지(례:A)
2
Shift키만의 수식 키를 금지(례:Shift+A)
4
Ctrl키만의 수식 키를 금지(례:Ctrl+A)
8
Alt키만의 수식 키를 금지(례:Alt+A)
16
Ctrl+Shift의 수식 키를 금지(례:Ctrl+Shift+A)
32
Alt+Shift의 수식 키를 금지(례:Alt+Shift+A)
128
Ctrl+Alt+Shift의 수식 키를 금지(례:Ctrl+Alt+Shift+A)

Remarks

포커스를 대면시키면서 키를 누르면, 키와 수식 키가 입력된다.
컨트롤에는 「Ctrl + C」(와)과 같이 표시되지만,Text인수로 설정하는 디폴트치나GUI,Submit커멘드등에서 취득되는 값은,Hotkey커멘드나hot key 라벨그리고 사용되는 것과 같은 서식.(례:「^!C」 「^Home」 「^NumpadHome」)수식 키는Ctrl(^),Alt(!),Shift(+)마셔 사용 가능.

Related

GUI, Gui,Add