AutoHotKey(오토핫키) 설명서 Hotkeys

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

Hotkeys

hot key는 「::」(코론2개)(을)를 따른 써브루틴 라벨로 해서 기술된다.
hot key가 입력되면 해당 라벨의 다음의 행에 처리가 옮겨, 최초로return인가exit하지만 실행될 때까지가 처리된다.

#y::
  WinActivate, Untitled - Notepad
  return

hot key에 할당하는 동작이1커멘드 뿐이라면, 「::」(코론2개)의 직후에 커멘드를 기술하는 것으로,1행으로 끝마칠 수 있다.return(은)는 불요.

#y::WinActivate, Untitled - Notepad

(비고) 프로그램은의사 multi-thread(이)가 되어 있다.
hot key 이벤트의 실행 도중에, 다른 hot key 이벤트가 실행되는 일도 가능.

수식 심볼

이하의 기호로 수식 키등을 지정할 수 있다.
복수의 심볼을 동시에 지정할 때는, 「!+」(와)과 같이 사이에 아무것도 열지 않고 연속해 기술한다.

+ Shift
^ Control
! Alt
# Win (미논)
< 왼쪽의 모디파이아키를 사용(NT계 전용)
례: <!a:: 좌Alt+A
> 오른쪽의 모디파이아키를 사용(NT계 전용)
례: >+<^a:: 좌Ctrl+우Shift+A
<^>! AltGr(일부의 나라의 키보드 레이아웃에 존재)
* 임의의 수식 키를 나타내는 와일드 카드(NT계 전용)
례1: *a:: Ctrl/Alt/Shift/Win상태에 관계없이,A키가 밀리면 발동
례2: *+a:: Ctrl/Alt/Win상태에 관계없이,Shift키가 밀린 상태로A키가 밀리면 발동
~ 이벤트를 빼앗지 않고, 그대로 시스템에 통한다.(NT계 전용)
례: ~*a::SoundPlay,D:\AutoHotkey\typesound.wav A키가 밀렸을 때에 사운드를 울린다.
(비고)Alt+Tab대체계 커멘드하지만 할당할 수 있었을 경우, 이 지정에 관계없이 입력은 납치된다.
$ RegisterHotkey()(이)가 아니고, 강제적으로 키보드 훅으로 이벤트를 취득한다.(NT계 전용)
써브루틴내에서 그 hot key 자신을 송신하는 경우,RegisterHotkey()그럼 hot key 이벤트가 재귀적으로 불려 가 버린다.
#UseHook지령을 사용하면,$(을)를 생략 할 수 있다.

사용할 수 있는 키명에 대해서는,Key List(을)를 참조

키 라벨의 사양

hot key 라벨은 통상의 라벨과 같이Gosub(이)나Goto그리고 이동할 수도 있다.
또, 아래 예의 같게, 복수의 hot key에 같은 써브루틴을 할당하는 일도 가능.

~*a::
~*b::
~*c::
SoundPlay,D:\AutoHotkey\typesound.wav
return

키의 무효화

동작으로서return문장만을 할당하면, 키를 무효화할 수도 있다.

RWIN::return

hot key를 스크립트의 실행중에 등록하거나 무효화/유효화하거나 하려면 ,Hotkey커멘드를 사용한다.

NT계 전용의 기능

Uphot key

키명의 뒤에 반각 스페이스에 이어 「Up」라고 붙이면, 키를 놓았을 때에 발동하는 hot key를 설정할 수 있다.(례:「a up」 「LShift up」)

Up없음의 hot key와 함께 설정하는 일도 가능.
Up없음의 hot key를 설정하고 있지 않는 경우에서도, 눌러 인하 이벤트는 납치된다.
예를 들어, 「a up::Send b」라고 하면,A키를 눌러 내렸을 때에는 아무것도 일어나지 않게 된다.
「~a::return」(을)를 모두 설정해 두면,A키가 눌러 내릴 수 있었을 때에는 보통으로A키가 밀렸을 때의 동작을 하게 된다.

밀어 올려 이벤트는, 「~」의 유무에 관계없이, 납치되지 않고 시스템에 통지된다.
예를 들어, 「LShift Up::return」(와)과 같이 해도,LShift키를 떼어 놓을 수 없게 할 수 없다.

콤비네이션 키

&」(을)를 사용하는 것으로,2개의 임의의 키(죠이스틱 이외)의 편성을 hot key로 지정하는 것이 가능.
3개이상의 키를 지정하거나+^!#그리고 수식 키를 추가하거나는 할 수 없다.
첫째로 지정한 키가 수식 키가 되어, 첫째의 키를 누르면서 둘째의 키를 누르면 발동한다.
첫째의 키를 누르고, hot key를 발동시키지 않고 떼어 놓으면, 첫째의 키 단독에 할당할 수 있었던 써브루틴이 실행된다.
첫째의 키 자체의 원래의 기능은 무효화된다.

Numpad0 & Numpad1::AltTab
Numpad0 & Numpad2::ShiftAltTab
Numpad0::Run, calc.exe

첫째의 키에 치르다(~)(을)를 붙이면, 그 키는 무효화되지 않고, 보통으로 입력된다.
하나에 붙여 두면, 첫째의 키가 같을 다른 hot key에서는 지정되어 있지 않아도, 그 키는 무효화되지 않게 된다.

~RButton & LButton::MsgBox,오른쪽 클릭하면서 왼쪽 클릭했다
RButton & WheelUp::MsgBox,오른쪽 클릭하면서 휠을 위에 돌렸다

상기예에서는, 오른쪽 클릭하면서 왼쪽 클릭하거나 휠을 위에 돌리거나 한다고 메세지가 나오지만, 오른쪽 클릭은 보통으로 액티브 윈도우에 보내진다

AltTab/ShiftAltTab/AltTabMenu/AltTabAndMenu/AltTabMenuDismiss

이러한 커멘드는, hot key에 직접 할당하는 것 마셔 가능한 특별한 커멘드.
보통으로 「Send,!{Tab}」라고 하면, 써브루틴이 끝날 때 마다Alt+Tab의 화면이 사라져 버려, 온전히 동작하지 않지만,AltTab/ShiftAltTab(을)를 할당하면, 수식 키를 떼어 놓을 때까지 화면이 사라지지 않게 된다.
또,AltTabMenu(을)를 사용하면,Alt+Tab화면의 표시의 유무를 교체된다.
AltTabAndMenu그리고 강제적으로 표시,AltTabMenuDismiss그리고 표시되고 있으면 소거라고 하는 동작도 할당할 수 있다.
또,Esc키가 밀리면, 선택된 윈도우로 전환하지 않고 표시를 종료할 수 있다.
수식 키가 없는 단독 키에AltTab/ShiftAltTab(을)를 할당했을 경우, 그대로는 아무것도 일어나지 않고,AltTabMenu그리고Alt+Tab의 화면을 표시하고 있는 동안만, 변환 조작을 할당할 수 있다.
덧붙여 수식 키는 좌우 어느 쪽인지를 지정해야 한다.「<+a」(와)과 같이 수식 심볼을 사용하는지, 「LShift & a」(와)과 같이 콤비네이션 키로 지정한다.

  LAlt & WheelDown::AltTab
  LAlt & WheelUp::ShiftAltTab

Alt+휠로 윈도우 변환

  MButton::AltTabMenu
  WheelDown::AltTab
  WheelUp::ShiftAltTab

중앙 클릭으로 변환 화면을 표시해, 휠로 선택, 다시 중앙 클릭하면 변환 화면이 사라져 전환이 실행된다.

Lock계 키의ON/OFF

SetNumlockState등의 커멘드로,NumLock키등의ON/OFF상태를 고정할 수 있다.

SetNumlockState, AlwaysOn

Windows표준 hot key

Win+E(이)나Win+R등의Windows표준 hot key도 동작을 덧쓰기하거나 무효화하거나 할 수 있다.
자세한 것은override page참조

숫자 패드와NumLock

숫자 패드의 각 키는NumLock상태에 의해서2대로의 hot key를 할당할 수 있다.
NumLock상태에 관계없이1개의 동작을 할당하고 싶은 경우는, 다음과 같이 한다.

NumpadEnd::
Numpad1::
MsgBox, This hotkey is launched regardless of whether Numlock is on.
return

Input커멘드

Input커멘드로 일련의 키스트로크(keystroke)를 받는 것으로,2스트로크 키나 단축 입력등의 기능을 실현할 수 있다.

^c::
    Input,InputChar,C I L1 T2,{Esc},x,s
    if ErrorLevel=Match
    {
        if InputChar=x
            Send,!{F4}
        if InputChar=s
            Send,^s
    }
    return


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(오토핫키) 설명서 GuiControlGet

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

GuiControlGet

Gui커멘드로 작성한 윈도우에 배치된 컨트롤의 각종 정보를 취득한다

GuiControlGet, OutputVar [, SubCommand, ControlID, Param4]

Parameters

인수명설명
OutputVar 취득한 결과를 격납하는 변수명
SubCommand 취득하는 정보의 종류를 지정한다.
생략시는, 컨트롤의 내용을 취득한다.
ControlID 대상이 되는 컨트롤을 지정한다.
컨트롤 작성시에 「v」옵션으로 변수를 할당하고 있는 경우, 그 변수명으로 지정할 수 있다.
그 이외의 경우, 컨트롤의ClassNN인가 컨트롤에 포함되는 텍스트를 지정한다.
Picture컨트롤의 화상 파일명도 지정할 수 있다.
생략시는,OutputVar그리고 지정한 변수가 「v」옵션으로 관련지을 수 있었던 컨트롤이 된다.
Param4 각SubCommand의 설명 참조.특히 설명이 없으면, 생략 한다.

ErrorLevel

무엇인가 문제가 있으면 「1」, 정상적으로 종료하면 「0」

SubCommand생략시

이하의 종류의 컨트롤 이외에서는,Gui,Add시간에Text인수로 설정되는 부분의 내용이 취득된다.

Hotkey
hot key가 입력되고 있으면, 「^!C」 「^Home」 「^NumpadHome」(와)과 같은 형식(hot key 라벨로 그대로 사용할 수 있다)그리고 취득된다.
Slider/Progress
현재의 위치가 취득된다.
Picture
컨트롤이Gui,Add그리고 추가되었을 때에 읽힌 화상의 파일명이 취득된다.
Checkbox/Radio
「0」(이)라면 체크 이루어, 「1」(이)라면 체크 있어, 「-1」(이)라면 반체크.
Param4에 「Text」(을)를 지정하면, 대신에 컨트롤의 캡션이 취득된다.
DropDownList/ComboBox/ListBox/Tab
선택되고 있는 항목의 텍스트가 취득된다.
ComboBox그럼, 입력란에 입력되고 있는 텍스트가 취득된다.

SubCommand

Pos
컨트롤의 좌표와 높이를 취득한다.
이 서브 커멘드에서는,OutputVar그리고 지정한 이름에 「X」 「Y」 「W」 「H」(을)를 붙인 이름의 변수에, 각각X좌표/Y좌표/폭/높이가 격납된다.
좌표는, 윈도우의 타이틀 바나 도구모음을 들여다 본 클라이언트 에리어상에서의 좌표로 취득된다.
Enabled
윈도우가 유효 상태라면 「1」, 무효화되고 있으면 「0」
Visible
컨트롤이 표시되고 있으면 「1」, 비표시가 되어 있으면 「0」
Focus
윈도우상의 입력초점을 가지고 있는 컨트롤의ClassNN(을)를 취득한다.
이 서브 커멘드에서는,ControlID(은)는 지정하지 않는다.
윈도우가 액티브하지 않은 경우, 입력초점을 가지는 컨트롤은 없기 때문에,OutputVar(은)는 비운다.
FocusV
Focus(와)과 같지만,ClassNN대신에 컨트롤에 할당한 변수명을 취득한다.
변수를 할당할 수 있지 않은 경우, 대신에 컨트롤의 텍스트의 최초의63문자까지가 취득된다.
Hwnd
DllCall(이)나PostMessage/SendMessage등에서 사용하는 윈도우 핸들을 얻는다.

Remarks

스크립트는 최대로10의 윈도우를 가질 수 있다.
디폴트 이외의 윈도우를 조작하려면 , 서브 커멘드의 전에 「2:」(와)과 같이 윈도우 번호와 코론을 추가한다.

기본적으로 디폴트의 윈도우 번호는 「1」이지만,2번째 이후의 윈도우상의GUI조작의 결과 실행된 스렛드에서는, 그 윈도우의 번호가 디폴트가 된다.

GuiControlGet, MyEdit, 2:
GuiControlGet, Outputvar, 2:Focus
GuiControlGet, OutputVar, 2:Pos, MyEdit

Related

Gui, GuiControl, ControlGet

Example(s)

GuiControlGet, MyEdit
GuiControlGet, CtrlContents,, MyEdit ; Same as the above except uses a non-default output variable.
GuiControlGet, MyCheckbox1 ; Retrieves 1 if it is checked, 0 if it is unchecked.
GuiControlGet, MyCheckbox1,,, Text ; Retrieves the caption/text of the checkbox. 
GuiControlGet, Pic, Pos, Static4 ; The position/size will be stored in PicX, PicY, PicW, and PicH


AutoHotKey(오토핫키) 설명서 GuiControl

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

GuiControl

Gui커멘드로 작성한 윈도우에 배치된 컨트롤에 대해 각종 조작을 실시한다

GuiControl, SubCommand, ControlID [, Param3]

Parameters

인수명설명
SubCommand 실행하는 조작을 지정.
생략시는 컨트롤의 내용이Param3그리고 지정한 것으로 변경된다.
자세한 것은 후술.
ControlID 대상이 되는 컨트롤을 지정한다.
컨트롤 작성시에 「v」옵션으로 변수를 할당하고 있는 경우, 그 변수명으로 지정할 수 있다.
그 이외의 경우, 컨트롤의ClassNN인가 컨트롤에 포함되는 텍스트를 지정한다.
Picture컨트롤의 화상 파일명도 지정할 수 있다.
Param3 각SubCommand의 설명을 참조.특히 설명이 없으면, 생략 한다.

ErrorLevel

무엇인가 문제가 있으면 「1」, 정상적으로 종료하면 「0」

SubCommand생략시

Param3에Gui,Add시간에Text인수로 설정하는 부분의 내용을 지정하는 것으로, 값을 재설정할 수 있다.
아래와 같은 컨트롤에 대해서는, 특기 사항 있어.

Hotkey
Param3에 공문자열이나 hot key를 지정한다.
hot key는 「^!C」 「^Home」 「^NumpadHome」(와)과 같은 hot key 라벨과 같은 형식에서 지정한다.수식 키는Ctrl(^),Alt(!),Shift(+)마셔 사용 가능.
Picture
Param3에 새롭게 읽어들이는 화상 파일명을 지정한다.
파일명의 전에 반각 스페이스에서 단락지어 이하의 옵션을 지정할 수 있다.
례:GuiControl,, MyPic, *icon2 *w100 *h-1 C:\My Application.exe
*wN
N에 컨트롤의 폭을 지정.「*w0」(으)로 화상의 실제의 폭.미지정의 경우는 현재의 컨트롤의 폭.「*w-1」(으)로 종횡비를 유지하도록(듯이) 「*hN」(으)로의 지정에 맞춘다.
*hN
N에 컨트롤의 높이를 지정.「*h0」(으)로 화상의 실제의 높이.미지정의 경우는 현재의 컨트롤의 높이.「*h-1」(으)로 종횡비를 유지하도록(듯이) 「*wN」(으)로의 지정에 맞춘다.
*IconN
N에 아이콘 번호를 지정.실행 파일등의 프로그램 파일중의 아이콘을 읽어들일 때 사용.
Checkbox
Param3에 체크 상태를 지정한다.
「0」(이)라면 체크 이루어, 「1」(이)라면 체크 있어, 「-1」(이)라면 반체크.
그 이외의 경우, 텍스트를 변경한다. 「0」 「-1」 「1」라고 하는 문자열을 텍스트에 설정하고 싶은 경우, 「Text」서브 커멘드를 사용한다.
Radio
Param3에 체크 상태를 지정한다.
「0」(이)라면 체크 이루어, 「1」(이)라면 체크 있어.
그 이외의 경우, 텍스트를 변경한다.
체크가 없음으로부터 있으가 되는 경우, 같은 그룹외의Radio의 체크는 자동적으로 빗나간다.
DateTime
Param3에YYYYMMDDHH24MISS의 서식그리고 표시 일시를 설정한다.
컨트롤의 옵션에 「2」(을)를 붙이고 체크 박스를 붙이고 있는 경우, 공문자열을 지정하는 것으로 체크를 떼어, 선택 없음을 나타내는 상태로 할 수 있다.
MonthCal
Param3에YYYYMMDDHH24MISS의 서식그리고 표시 일시를 설정한다.
컨트롤의 옵션에 「Multi」(을)를 붙여 복수 선택 상태로 하고 있는 경우, 「20050101-20050202」(와)과 같은 범위에서 지정한다.
UpDown/Slider/Progress
새로운 값/위치를 지정한다.
「+」에 계속치를 지정하면, 현재의 위치로부터의 상대 위치에서 지정할 수 있다.줄이는 경우도 「+-10」(와)과 같이 부의 값에+(을)를 붙여 지정한다.
설정된 범위외의 수치가 되는 경우는, 범위내에서 가까운 값이 된다.
DropDownList/ComboBox/ListBox
리스트에추가하는 텍스트 항목을 「|」(으)로 단락지어 열거.
리스트의 항목을 모두 설정 다시 하는 경우, 최초의 항목의 전에 「|」(을)를 넣는다.(례:「|aaa|bbb|ccc」)
항목의 뒤로 「||」(이)가 있으면, 그 항목이 선택된 상태가 된다.(례:「xxx||yyy|zzz」, 「xxx|yyy|zzz||」)
Tab
탭의 이름이나 수에 의하지 않고,1번째의 탭 시트에 배치되어 있던 컨트롤은1번째의 탭 시트에,N번째의 탭 시트에 배치되어 있던 컨트롤은N번째의 탭 시트에 배치된 채로 있다.
변경에 의해서 탭 시트의 수가 줄어 드는 경우, 제일 뒤의 탭 시트가 사라지게 되지만, 후에 탭의 수가 증가하면 탭 시트의 내용와도 부활한다.
ListView
리스트뷰의 조작은리스트뷰 조작용의 편입 함수(을)를 사용한다.

SubCommand

Text
서브 커멘드 생략시와 거의 같은 동작이지만,Checkbox(이)나Radio에 「0」 「-1」 「1」(을)를 지정했을 경우에서도, 텍스트로서 설정된다.
또,DateTime컨트롤에서는,Param3그리고 표시 포맷을 재설정할 수 있다.(Param3(을)를 생략 하면, 짧은 일자 문자열 포맷이 된다)
ComboBox그럼, 입력란의 내용을 변경할 수 있다.
Move
컨트롤을 이동/사이즈 변경한다.
Param3에는 「Xn」(n에X좌표를 지정)「Yn」(n에Y좌표를 지정)「Wn」(n에 폭을 지정)「Hn」(n에 높이를 지정)중, 변경하고 싶은 것을 스페이스 단락으로 열거한다.(례:「x10 y20 w200 h100」)
좌표는, 윈도우의 타이틀 바나 도구모음을 포함하지 않는 클라이언트 영역상에서의 좌표.
MoveDraw
Move(와)과 거의 같지만, 윈도우를 재묘화 시킨다.
표시 내용이 확실히 갱신되지만, 표시가 조금씩 날리는 경우가 있다.
Focus
컨트롤에 입력초점을 대면시킨다
Enable
Enable1
Disable0
무효화되고 있는 컨트롤을 유효화한다
Disable
Disable1
Enable0
컨트롤을 무효화한다
Show
Show1
Hide0
비표시가 되어 있는 컨트롤을 표시한다
Hide
Hide1
Show0
컨트롤을 비표시로 한다
Choose
Param3번째의 항목을 선택한다(DropDownList/ComboBox/ListBox전용).
이 커멘드로 선택을 변경했을 경우, 통상은 「g」옵션으로 할당할 수 있었던 써브루틴은 실행되지 않지만, 「GuiControl,,Choose,|3」(와)과 같이Param3의 숫자의 전에 「|」(을)를 붙이면, 써브루틴이 실행된다.
또, 「||」(을)를 붙이면,A_GuiControlEvent변수가DoubleClick(이)가 되어 있는 상태로 써브루틴이 실행된다.
ChooseString
Param3그리고 지정한 문자열에 전방 일치하는 항목을 선택한다(DropDownList/ComboBox/ListBox전용).
대문자 소문자는 구별되지 않는다.
이 커멘드로 선택을 변경했을 경우, 통상은 「g」옵션으로 할당할 수 있었던 써브루틴은 실행되지 않지만, 「GuiControl,,Choose,|3」(와)과 같이Param3의 숫자의 전에 「|」(을)를 붙이면, 써브루틴이 실행된다.
또, 「||」(을)를 붙이면,A_GuiControlEvent변수가DoubleClick(이)가 되어 있는 상태로 써브루틴이 실행된다.
Font
폰트를 현재Gui,Font그리고 윈도우로 설정되어 있는 폰트로 변경한다.「Gui,Font」참조.
+Redraw/-Redraw
리스트뷰등에서 대량의 항목을 추가·삭제·변경하기 전에GuiControl,-Redraw,ControlID그리고 재묘화를 정지해, 종료후에+Redraw그리고 재개시키는 것으로 퍼포먼스를 개선할 수 있다.
+/-Option
GUI,add시간으로 지정할 수 있는 것과 같은 옵션을 추가·해제한다.
복수를 스페이스에서 단락지어 열거할 수도 있다.
예를 들면, 「GuiControl, -g +AltSubmit, MyListBox」라고 하면, 「G」옵션에 의한 이벤트 써브루틴 할당을 해제해, 「AltSubmit」옵션을 추가할 수 있다.
스타일이나 확장 스타일의 대부분은 이 방법으로 나중에 변경할 수 없다.(덧붙여 변경에 실패해도,ErrorLevel(은)는 「0」(이)가 된다)

Remarks

스크립트는 최대로10의 윈도우를 가질 수 있다.
디폴트 이외의 윈도우를 조작하려면 , 서브 커멘드의 전에 「2:」(와)과 같이 윈도우 번호와 코론을 추가한다.

기본적으로 디폴트의 윈도우 번호는 「1」이지만,2번째 이후의 윈도우상의GUI조작의 결과 실행된 스렛드에서는, 그 윈도우의 번호가 디폴트가 된다.

GuiControl, 2:Show, MyButton
GuiControl, 2:, MyListBox, Item1|Item2

Related

Gui, GuiControlGet, Control

Example(s)

GuiControl,, MyListBox, |Red|Green|Blue ; Replace the current list with a new list.
GuiControl,, MyEdit, New text line 1.`nNew text line 2.
GuiControl,, MyRadio2, 1 ; Turn on this radio button and turn off all the others in its group.
GuiControl, Move, OK, x100 y200 ; Move the OK button to a new location.
GuiControl, Focus, LastName ; Set keyboard focus to the control whose variable or text is "LastName".


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

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

Gui,TreeView

GUI윈도우의 트리뷰 조작계 편입 함수로 대상이 되는 트리뷰콘트로르를 지정한다

Gui,TreeView,TreeViewName

Parameters

인수명설명
TreeViewName 대상이 되는 컨트롤을 지정한다.
컨트롤 작성시에 「v」옵션으로 변수를 할당하고 있는 경우, 그 변수명으로 지정할 수 있다.
「SysTreeView32N」(N(은)는 컨트롤이 작성한 차례로1(으)로부터 붙여지는 번호)(와)과 같이ClassNN그리고 지정할 수도 있다.

Remarks


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

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

Gui,Tab

GUI윈도우에Tab컨트롤이 배치되어 있을 때, 다음에 배치되는 컨트롤이 어느 탭 페이지에 배치되는지를 변경한다

Gui,Tab [, Item, ControlNo, Exact]

Parameters

인수명설명
Item 탭을 지정한다. 숫자를 지정했을 경우는, 그 번호의 탭이 대상이 된다.최초의 탭은 「1」이다.
문자열로 지정했을 경우는, 캡션이 그 문자열로 시작되는 탭이 대상이 된다.이 때, 대문자 소문자의 차이는 무시된다.
아직 존재하지 않는 번호도 지정할 수 있다.다만, 상대 좌표로의 배치는 행해지지 않게 된다.
ControlNo 탭 콘트롤의 번호.
생략시는, 직전까지 대상이었던 탭 콘트롤.
Exact Item에 문자열을 지정했을 때, 전방 일치는 아니고 완전 일치로 검색한다.
대문자 소문자도 완전하게 일치하는 것이 검색된다.

Remarks

옵션 없이 실행하면, 탭 콘트롤상이 아니고, 윈도우의 직하에 배치되게 된다.

각 탭 페이지에 최초의 컨트롤을 배치할 때,X,Y옵션에 의한 좌표 지정을 생략 하면, 탭 페이지의 좌상에 배치된다.
또,X+n/Y+n옵션으로 상대 좌표를 지정하면, 탭 페이지의 좌상으로부터의 상대 좌표가 된다.

탭 페이지상의 컨트롤은, 탭 페이지에서는 봐 내 배치하는 일도 가능.
초과하고 있는 컨트롤은, 배치된 탭 페이지가 액티브한 때 마셔 표시된다.

Related

GUI, Gui,Add,Tab

Example

Gui, Tab   ; Future controls are not part of any tab control.
Gui, Tab, 3   ; Future controls are owned by the third tab of the current tab control.
Gui, Tab, 3, 2   ; Future controls are owned by the third tab of the second tab control.
Gui, Tab, Name   ; Future controls are owned by the tab whose name starts with Name (not case sensitive).
Gui, Tab, Name,, Exact  ; Same as above but requires exact match (case sensitive too). [v1.0.37.03+]


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

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

Gui,Submit

GUI윈도우를 비표시로 해, 컨트롤에의 입력 내용을 변수에 반영시킨다

GUI, Submit [, NoHide]

Parameters

인수명설명
NoHide 「NoHide」(을)를 지정하면, 윈도우를 비표시로 하지 않고 , 변수에의 반영만을 실시한다.

Remarks

컨트롤 상태나 내용을 지정된 변수에 반영시킨다.
옵션에 「NoHide」(이)가 지정되지 않았던 경우, 윈도우는 비표시 상태가 된다.
윈도우가 존재하지 않았던 경우, 아무것도 일어나지 않는다.

Related

GUI


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

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

Gui,Show

GUI윈도우의 표시·표시 상태의 변경

GUI, Show [, Options, Title]

Parameters

인수명설명
Options 이하의 것을 반각 스페이스 단락으로 지정할 수 있다.
Xn
n에 윈도우의 수평 좌표를 지정(례:X40)
Yn
n에 윈도우의 수직 좌표를 지정(례:H30)
XCenter
X좌표를 윈도우가 화면의 중앙에 오도록(듯이) 자동 설정
YCenter
Y좌표를 윈도우가 화면의 중앙에 오도록(듯이) 자동 설정
Center
X/Y좌표를 화면 중앙이 되도록(듯이) 설정
Wn
n에 윈도우의 클라이언트 영역의 폭을 지정(례:W300)
Hn
n에 윈도우의 클라이언트 영역의 높이를 지정(례:H200)
AutoSize
윈도우의 폭과 높이를, 표시 떠날 수 있어 모든 컨트롤이 들어가도록(듯이) 변경한다
Maximize
최대화한다
Minimize
최소화한다
Restore
바탕으로 되돌린다
NoActivate
바탕으로 되돌린다.액티브화는 되지 않는다.
Hide
윈도우를 비표시로 한다.
비표시로 한 채로 상태로, 타이틀이나 옵션을 변경할 수 있다.
NA
윈도우를 표시하지만, 액티브화는 하지 않는다.
최소화된 윈도우는, 최소화된 채로 일번수앞에 온다.(Alt+Tab그리고 표시되는 차례로 영향)
윈도우가 비표시의 경우, 맨 앞면에 표시되지만, 액티브 윈도우는 변하지 않다.
Title 타이틀 바에 표시하는 문자열.
지정되지 않았던 경우, 타이틀은 변경되지 않는다.
윈도우가 작성되었을 때의 타이틀은, 스크립트의 파일명.

Remarks

Options에 아무것도 지정되지 않았던 경우, 마지막에 표시되고 있던 위치와 사이즈로 표시되어 최소화되고 있으면 해제되어 액티브화 된다.
제일 최초로 표시될 때 위치나 사이즈가 지정되지 않았던 경우는,Center(이)나AutoSize하지만 지정된 것과 같게 된다.

최초로Gui,Show하지만 실행될 때까지는, 윈도우의x,y좌표, 폭, 높이는 모두 「0」(이)가 되어 있다.
윈도우를 표시하기 전에 작성했다GUI윈도우의 사이즈를 알고 싶은 경우, 미리 「Gui,Show,Hide」(을)를 실행해 사이즈를 결정시킬 필요가 있다.

Gui,Add,Edit
Gui,Show,Hide
Gui,+LastFound
WinGetPos,x,y


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

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

Gui,Restore

GUI윈도우의 최소화·최대화를 바탕으로 되돌린다

GUI, Restore

Remarks

GUI윈도우가 비표시가 되어 있는 경우는, 표시된다.

GUI윈도우가 존재하지 않는 경우는, 아무것도 일어나지 않는다.

Related

GUI


AutoHotKey(오토핫키) 설명서 Gui,+/-Option

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

Gui,+/-Option

GUI윈도우의 옵션을 추가/삭제한다

Gui, [+Option|-Option]

Parameters

인수명설명
Option 아래와 같이 참조.
「+」(을)를 붙이면 추가, 「-」(을)를 붙이면 삭제.
복수의 옵션을 반각 스페이스에서 단락지어 열거할 수 있다. 지정한 옵션 이외는 변경되지 않는다.

Option(으)로 지정할 수 있는 것

LastFound
윈도우 관련 커멘드로 대상 윈도우 지정을 생략 했을 때에 대상이 되는 「LastFoundWindow」(으)로 설정한다.
GUI윈도우가 아직 존재하지 않는 경우는, 하늘의 윈도우가 생성된다.
LastFoundExist
LastFound(와)과 같지만, 해당GUI윈도우가 존재하지 않는 경우, 윈도우의 생성은 하지 않고LastFoundWindow하지만 클리어 된다.
해당GUI윈도우가 이미 사용되고 있는지 어떤지를 알기 위해서 이용할 수 있다.
LabelNAME
윈도우가 닫았을 때 등에 실행되는 써브루틴 라벨의 접머리 글자열을NAME그리고 지정한 것으로 변경한다.
예를 들면, 「Gui,2:+LabelOptionWindow」라고 하면,2번째의GUI윈도우가 닫혀졌을 때에 「2GuiClose」(은)는 아니고 「OptionWindowClose」라고 하는 라벨의 써브루틴이 실행된다.
써브루틴내에서 이벤트가 일어났다GUI(을)를 특정하려면 , 「A_Gui」변수를 이용한다.
DelimiterC
리스트 박스나 combobox등의 항목을Gui,Add그리고 설정할 때나,Gui,Submit등에서 취득할 경우에 항목의 단락으로서 사용되는 단락 문자를 설정한다.
C에 단락 문자를 지정한다.(례:「Delimiter`n」)
반각 스페이스를 사용하고 싶을 때는 「DelimiterSpace」,Tab문자를 사용하고 싶을 때는 「DelimiterTab」라고 지정한다.
이 옵션의 변경은, 실행중외의 스렛드에도 영향을 준다.
Owner[N]
특정의 윈도우를 다른 윈도우의 종속 윈도우로 한다.
종속 윈도우는 태스크바에 표시되지 않고, 항상 주윈도우보다 전면에 표시되어 주윈도우가 파기될 때 함께 파기된다.
N에 주윈도우의 번호를 숫자로 지정한다.
숫자를 붙이지 않았던 경우,AutoHotkey의 메인 윈도우의 종속 윈도우가 된다.
이 옵션은, 주윈도우가 벌써 작성되고 있어 종속 위드우는 아직 작성되어 있지 않은 상태로 밖에 사용할 수 없다.
종속 윈도우가 작성되어 있지 않은 경우만, 「-Owner」(을)를 실행하는 것으로, 설정을 해제할 수 있다.
종속 윈도우가 표시되고 있는 동안, 주윈도우를 조작할 수 없게 하고 싶은 경우, 종속 윈도우를 표시할 경우에 「+Disabled」(으)로WS_DISABLED(을)를 추가해 조작 불가능하게 해, 종속 윈도우를 닫았을 때에 「-Disabled」(으)로 해제하도록(듯이) 한다.
OwnDialogs
다이얼로그가 표시되고 있는 동안은 친윈도우를 조작할 수 없는 모덜 다이얼로그를 표시시킨다.
대상이 되는 것은,MsgBox, InputBox, FileSelectFile, FileSelectFolder의 각 커멘드로 표시되는 다이얼로그이다.
또, ToolTip, Progress, SplashImage그리고 표시되는 윈도우도, 아이 윈도우라고 하는 취급이 되어, 친윈도우보다 반드시 전에 표시되어 친윈도우가 파기되는 것과 동시에 파기되게 된다.
이 설정은, 설정을 실시했다스렛드에서만 유효하다. 「Gui,+OwnDialogs」라고 하면, 스렛드의 디폴트GUI윈도우가 친윈도우가 된다.
Gui,2:+OwnDialogs」(와)과 같이 하면, 명시적으로 친윈도우를 설정할 수 있다.
Gui,-OwnDialogs」(와)과 같이 하면, 설정이 해제되어 모덜 다이얼로그를 표시한 후에 보통 다이얼로그를 표시하는 일도 가능.
AlwaysOnTop
항상 맨 앞면표시로 한다.
Disabled
조작 불가능하게 한다.
Border
윈도우의 테두리를 표시한다.
무효로 하면, 타이틀 바도 표시되지 않게 된다.
Caption
윈도우에 타이틀 바를 표시한다.
초기 상태는 유효하게 되어 있다.
MaximizeBox
윈도우를 최대화 가능하게 해, 타이틀 바에 최대화 버튼을 표시한다.
초기 상태는 유효하게 되어 있다.
MinimizeBox
윈도우를 최소화 가능하게 해, 타이틀 바에 최소화 버튼을 표시한다.
초기 상태는 유효하게 되어 있다.
Resize
윈도우를 리사이즈 가능하게 한다.
최대화 버튼은, 리사이즈 가능하게 하지 않으면 사용할 수 없다.
MaxSizeWxH
Resize옵션이 지정되어 있다Gui윈도우에 대하고, 클라이언트 영역의 최대의 폭을W피크셀, 최대의 높이를H피크셀에 제한한다.(례:「MaxSize320x240」)
W인가H의 다른 한쪽만을 지정할 수도 있다.이 경우, 생략 된 (분)편은 무제한하게 된다.(례:「MaxSize320x」 「MaxSizex240」)
WxH하지만 지정되어 있지 않은 경우, 현재의 사이즈를 상한으로 한다.한번도 윈도우를 표시하고 있지 않는 경우는, 최초로Gui,Show(을)를 실행했을 때의 사이즈가 된다.
MinSizeWxH
Resize옵션이 지정되어 있다Gui윈도우에 대하고, 클라이언트 영역의 최소의 폭을W피크셀, 최소의 높이를H피크셀에 제한한다.(례:「MinSize320x240」)
그 외는MaxSize(와)과 같다.
SysMenu
타이틀 바의 아이콘과 아이콘 클릭시에 표시되는 메뉴(「닫는다」등이 표시된다)(을)를 표시할지를 지정.
이것을 무효로 하면, 태스크바의 버튼을 오른쪽 클릭했을 때에 나오는 메뉴도 없어진다.
Theme
이후에 작성되는 컨트롤에WindowsXP의 비주얼 스타일을 적용할지를 지정.
초기 상태는 유효하게 되어 있다.
ToolWindow
타이틀 바가 가늘고(화면의 프롭퍼티의 설정에 의존), 태스크바에 버튼이 표시되지 않는 윈도우가 된다.
0xNNNNNNNN
컨트롤의 스타일을8자리수의16진수치로 지정한다.
자세한 것은스타일 일람(을)를 참조.
E0xNNNNNNNN
컨트롤의 확장 스타일을8자리수의16진수치로 지정한다.
자세한 것은스타일 일람(을)를 참조.

Related

GUI

Example(s)

;윈도우2(을)를 윈도우1의 종속 윈도우로 하는 예
Gui,add,text,,aaaaaaaa
Gui,2:+owner1