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

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

Gui,Add,GroupBox

GUI윈도우에 복수의 컨트롤을 둘러싸는 테두리를 추가한다

Gui, Add, GroupBox [, Options, Text]

Parameters

인수명설명
Options 옵션을 반각 스페이스 단락으로 열거.
Gui,Add의 항참조.
고유의 옵션으로서BackgroundTrans하지만 있다.
Text 컨트롤의 좌상에 표시되는 캡션을 지정한다.
「&A」(와)과 같이&+영숫자를 넣는 것으로, 액세스 키를 설정할 수 있다.
액세스 키는 「A」(와)과 같이 언더라인 첨부의 문자로 표시된다.
Alt+문자 키로, 다음에 추가한 컨트롤에 포커스가 옮긴다.

고유의Option

BackgroundTrans
배경 부분을 투과 해, 아래에 배치된 컨트롤이 보이도록(듯이) 한다.
나중에 해제하는데는,GuiControl그리고 「+Background」(을)를 설정한다.

Remarks

GroupBox의 안쪽에 컨트롤을 배치하려면 , 다음의 컨트롤을 「xp+」 「yp+」옵션으로 전의 컨트롤의 좌상으로부터의 상대 좌표로 위치를 지정하면 좋다.

Related

GUI, Gui,Add


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

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

Gui,Add,Edit

GUI윈도우에 텍스트 입력란을 추가한다

Gui, Add, Edit [, Options, Text]

Parameters

인수명설명
Options 옵션을 반각 스페이스 단락으로 열거.
Gui,Add의 항참조.
고유의 옵션은 아래와 같이 참조.
R그리고 행수를 지정하면, 복수행을 입력 가능한 입력란이 된다.
V그리고 변수명을 지정해, 「GUI, Submit」(을)를 실행하는 것으로, 입력 내용을 취득할 수 있다.
G그리고 라벨명을 지정하면, 입력 내용이 변경될 때 마다 써브루틴이 실행된다.
Text 최초로 입력란에 표시되고 있는 텍스트를 지정한다

고유의Option

Multi
H(이)나R에 의한 높이의 지정이 없어도 복수행 에디트로 한다
Tn
탭 위치를 지정한다.
n에는 수치를 지정.n×2피크셀 정도의 폭이 된다.
디폴트는32.
「t8 t16 t8」(와)과 같이 복수를 지정하면, 탭 위치를 개별적으로 지정할 수 있게 된다.
지정한 개수 이후의 탭 위치는, 마지막에 지정한 폭으로 새겨진다.
최대50개까지 지정할 수 있다.
Number
10진수치만 입력 가능하게 한다.UpDown컨트롤에 의해, 수치를 증감시키기 위한▲▼버튼을 추가할 수 있다.
Lowercase
알파벳이 모두 소문자가 되도록(듯이) 한다
Uppercase
알파벳이 모두 대문자가 되도록(듯이) 한다
Limit[N]
입력할 수 있는 문자수를 제한한다.
「Limit16」(와)과 같이N에 수치를 지정하면, 그 문자수가 상한이 된다.
N(을)를 생략 했을 경우, 컨트롤의 크기 가득 표시할 수 있는 문자수가 상한이 된다.
WantReturn
통상,Default옵션의 지정되었다Button하지만 있는 경우, 윈도우상에서Enter키를 누르면 그 버튼이 밀리지만,WantReturn하지만 유효하게 되어 있는 복수행의Edit에 포커스가 있는 경우, 대신에 입력란에 개행이 입력된다.
복수행 에디트에서는, 디폴트로 유효하게 된다.「-WantReturn」(을)를 모두 지정하는 것으로 무효로 할 수 있다.
WantTab
Tab키를 눌렀을 때에, 다음의 컨트롤로 이동하는 것이 아니라,Tab문자가 입력되도록(듯이) 한다.
복수행의 경우, 이 옵션이 없어도,Ctrl+Tab그리고 탭 문자를 입력할 수 있다.
WatnCtrlA
Ctrl+A키를 눌렀을 때에 텍스트가 모두 선택되게 된다.
디폴트로 유효하게 되어 있다.
ReadOnly
편집 불가로 한다
Password*
패스워드 입력란과 같이 입력 내용이 마스크 되도록(듯이) 한다.
*에 대신해에 표시되는 문자를 지정

Remarks

복수행 입력란에 포커스가 있을 때는,Enter키는 디폴트 버튼의 눌러 인하는 아니고 개행의 입력이 된다.Tab키는 포커스의 이동인 채이지만,Ctrl+Tab그리고Tab문자를 입력할 수 있다.

변수에 취득될 때, 복수행 입력란의 개행은LF(`n)(이)가 된다.

Related

GUI, Gui,Add


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

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

Gui,Add,DropDownList

GUI윈도우에 드롭 다운 리스트를 추가

Gui, Add, DropDownList [, Options, Text]

Parameters

인수명설명
Options 옵션을 반각 스페이스 단락으로 열거.
Gui,Add의 항참조.
V그리고 변수명을 지정했을 경우, 「GUI,Submit」(이)나GuiControlGet커멘드로 선택되고 있는 항목명을 취득할 수 있다.미선택시는 공문자열이 된다
G그리고 써브루틴명을 지정했을 경우, 선택이 바뀔 때마다 그 써브루틴이 실행된다.
고유의 옵션에 대해서는, 아래와 같이 참조.
Text 「|」(으)로 단락지어 선택 가능 항목을 열거한다.
항목의 뒤의 「|」(을)를 두 개로 하면, 그 항목이 초기 상태로 선택된 상태가 된다.(례:「Default||aaa|bbb」 「aaa|bbb|Default||」)
Gui,+Delimiter`n」(와)과 같이 하면, 단락 문자를 「|」이외의 것(이 예에서는 개행)(으)로 변경할 수 있다.

고유의Option

Sort
항목을 항목명 순서에 줄서 바꾸어 표시한다
반각 문자를 타이프 치면 선두가 일치하는 항목으로 이동하는 「인크리멘탈 서치」의 기능도 유효하게 된다.
Lowercase
알파벳이 모두 소문자가 되도록(듯이) 한다
Uppercase
알파벳이 모두 대문자가 되도록(듯이) 한다
AltSubmit
Gui,Submit(이)나GuiControlGet그리고 취득되는 정보를 변경한다.
통상은, 선택된 항목의 텍스트가 취득되지만, 이 옵션을 지정하면, 선택된 항목의 번호가 취득된다.(1번째가 「1」, 미선택시는 공문자열)
ChooseN
N에 최초로 선택되는 항목의 번호를 지정한다.

Remarks

드롭 다운 리스트는,1행의 텍스트 입력란을 닮아 있지만, 「▼」을 클릭하는 것으로 선택 가능 항목의 일람이 전개된다.

Related

GUI, Gui,Add

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

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

Gui,Add,DateTime

GUI윈도우에 일자 시각을 입력하는 컨트롤을 추가한다

Gui, Add, DateTime [, Options, Format]

Parameters

인수명설명
Options 옵션을 반각 스페이스 단락으로 열거.
공통의 옵션에 대해서는,Gui,Add의 항참조.
고유의 옵션에 대해서는 후술.
V그리고 변수명을 지정해, 「GUI, Submit」(을)를 실행하는 것으로, 현재의 값을YYYYMMDDHH24MISS의 서식그리고 취득할 수 있다.
G그리고 써브루틴명을 지정하면, 일자 시각이 조작에 의해서 변경될 때 마다 그 써브루틴이 실행된다.
Format 표시되는 일자 시각의 서식을 이하의 어떤 것인가의 형태로 설정한다.
생략시
시스템으로 설정된 서식에서 일자만을 표시한다.일본의 경우, 「2005/01/01」(와)과 같은 서식이 된다.
LongDate
시스템으로 설정된 긴 서식에서 일자를 표시한다.일본의 경우, 「2005년 1월 1일」과 같이 된다.
Time
시스템의 언어 설정으로 설정된 서식에서 시각만을 표시한다.「23:55:00」(와)과 같이 된다.
그 외의 서식
FormatTime커멘드로 지정하는 것과 같은 서식에서 임의의 서식을 설정할 수 있다.

고유의Option

ChooseYYYYMMDDHH24MISS
YYYYMMDDHH24MISS(으)로 지정된 일자가 초기 상태로 입력된다.(례:「Choose20050831045349」) 미지정시는 현재 일시가 된다.
RangeMin-Max
Min(와)과Max에 선택 가능한 범위의 하한과 상한을YYYYMMDDHH24MISS의 서식그리고 설정한다.(례:「Range20050101-20051231」)
상한이나 하한의 다른 한쪽만을 지정할 수도 있다(례:「Range20050101」 「Range-20051231」)
지정되지 않았던 경우, 상한은9999년12월31일, 하한은1601년1월1일이 된다.
Right
캘린더가 드롭 다운 표시되는 위치를, 좌단을 컨트롤에 맞추는 것이 아니라, 우단을 대면시키도록(듯이) 한다.
1
드롭 다운 버튼 대신에, 업다운 버튼을 우측으로 부가한다.
이 버튼을 누르면, 컨트롤중의 포커스가 있는 요소가 증감한다.
2
입력란내의 좌측으로 체크 박스를 부가한다.
체크 박스의 체크를 떼면, 일자가 선택되어 있지 않게 된다.
이 때,V옵션으로 지정된 변수에 취득되는 값은 비운다.
ChooseNone
초기 상태로 체크 박스의 체크를OFF(으)로 한다.

Remarks

DateTime컨트롤로 배치되는 일자 시각 입력 컨트롤은, 일견 combobox같지만, 입력란에는 소정의 서식에서 일자 시각을 입력할 수 밖에 하지 못하고, 드롭 다운 버튼을 누른다고 캘린더 컨트롤이 표시되어 일자를 선택할 수 있다.

컨트롤상에서는, 일자 시각의 각 부분 마다 포커스가 이동해, 숫자 키로 직접 입력할 수 있는 것 외에 커서 키의 상하로 값을 증감시키는 것등을 할 수 있다.

Related

GUI, Gui,Add

Example

Gui,Add,DateTime,2 gDT vDTV Choose20040101121101 Range20040101120101,yyyy/MM/dd HH:mm:ss
Gui,Show


DT:
FormatTime,t,%DTV%,yyyy/MM/dd HH:mm:ss
Gui,Show,,%t%
return


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

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

Gui,Add,ComboBox

GUI윈도우에 combobox를 추가한다

Gui, Add, ComboBox [, Options, Text]

Parameters

인수명설명
Options 옵션을 반각 스페이스 단락으로 열거.
Gui,Add의 항참조.
V그리고 변수명을 지정했을 경우, 「GUI,Submit」(이)나GuiControlGet커멘드로 입력란의 문자열을 취득할 수 있다.
G그리고 써브루틴명을 지정했을 경우, 선택이 바뀔 때마다 그 써브루틴이 실행된다.
고유의 옵션에 대해서는, 아래와 같이 참조.
Text 「|」(으)로 단락지어 선택 가능 항목을 열거한다.
항목의 뒤의 「|」(을)를 두 개로 하면, 그 항목이 초기 상태로 선택된 상태가 된다.(례:「Default||aaa|bbb」 「aaa|bbb|Default||」)
Gui,+Delimiter`n」(와)과 같이 하면, 단락 문자를 「|」이외의 것(이 예에서는 개행)(으)로 변경할 수 있다.

고유의Option

Limit[N]
입력할 수 있는 문자수를, 입력란의 가로폭에 들어가는 문자수까지 제한한다.
Simple
드롭 다운식이 아니고,Edit의 아래에ListBox하지만 있는 형태의 컨트롤이 된다.
Sort
항목을 항목명 순서에 줄서 바꾸어 표시한다
Lowercase
알파벳이 모두 소문자가 되도록(듯이) 한다
Uppercase
알파벳이 모두 대문자가 되도록(듯이) 한다
AltSubmit
Gui,Submit(이)나GuiControlGet그리고 취득되는 정보를 변경한다.
통상은, 선택된 항목의 텍스트가 취득되지만, 이 옵션을 지정하면, 선택된 항목의 번호가 취득된다.(1번째가 「1」, 미선택시는 입력란의 문자열)
ChooseN
N에 최초로 선택되는 항목의 번호를 지정한다.

Remarks

combobox는은,1행의 텍스트 입력란의 오른쪽으로 「▼」버튼이 붙어 있어 이것을 클릭하면 선택 가능 항목이 전개되어 선택하면 그 내용이 입력란에 입력된다.

Related

GUI, Gui,Add

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

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

Gui,Add,Checkbox

GUI윈도우에 체크 박스를 추가한다

Gui, Add, Checkbox [, Options, Text]

Parameters

인수명설명
Options 옵션을 반각 스페이스 단락으로 열거.
Gui,Add의 항참조.
V그리고 변수명을 지정해, 「GUI, Submit」(을)를 실행하는 것으로, 체크 상태를 취득할 수 있다.취득되는 것은, 체크 없음이라면 「0」, 반체크라면 「-1」, 체크 있어라면 「1」.
G그리고 써브루틴 라벨명을 지정하는 것으로, 체크 상태를 바꾸었을 때에 실행되는 써브루틴을 설정할 수 있다.
Text 체크 박스의 오른쪽으로 표시되는 텍스트를 지정.
개행을 포함할 수도 있다.
「&A」(와)과 같이&+영숫자를 넣는 것으로, 액세스 키를 설정할 수 있다.
액세스 키는 「A」(와)과 같이 언더라인 첨부의 문자로 표시된다.
Alt+문자 키로, 체크 상태를 바꿀 수 있다.

고유의Option

Check3
반체크를 가능하게 한다.
Checked
최초부터 체크된 상태로 한다.
Checked0,Checked1,Checked-1그리고 각각 체크 이루어, 체크 있어, 반체크가 된다.이것은,GUI, Submit등에서 얻을 수 있는 체크 상태를 변수X에 격납해 「Checked%X%」(와)과 같이 해 사용한다.
CheckedGray
초기 상태를 반체크된 상태로 한다.

Remarks

Related

GUI, Gui,Add


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

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

Gui,Add,Button

GUI윈도우에 버튼 컨트롤을 추가한다

Gui, Add, Button [, Options, Text]

Parameters

인수명설명
Options 고유의 옵션으로서 「Default」(이)가 있다.
그 이외는,Gui,Add의 항참조.
G옵션으로 지정한 써브루틴은, 버튼을 눌렀을 때에 실행된다.
Text 버튼에 표시되는 텍스트.
개행을 포함할 수도 있다.
「&A」(와)과 같이&+영숫자를 넣는 것으로, 액세스 키를 설정할 수 있다.
액세스 키는 「A」(와)과 같이 언더라인 첨부의 문자로 표시된다.
Alt+문자 키를 누르면, 그 컨트롤을 클릭했을 때의 동작을 한다.
「&&」라고 쓰는 것으로, 텍스트중에 「&」(을)를 표시할 수 있다.

고유의Option

Default
Button(을)를 윈도우의 디폴트 버튼으로 한다.
윈도우가 액티브한 상태로Enter키를 누르면, 그 버튼이 밀린다.

Remarks

Button컨트롤에서는, 「G」옵션으로 써브루틴을 지정하지 않아도, 자동적으로 디폴트의 라벨을 할당할 수 있다.
예를 들어,Text인수가 「Text」의 버튼에서는, 「ButtonText」라고 하는 라벨에 할당할 수 있다.(해당하는 라벨이 존재하면)
다만,Text인수에 반각 스페이스나 「&」, 개행 문자등이 포함되는 경우, 그러한 문자를 제외한 문자열이 사용된다.

2번째 이후의 윈도우의 버튼에 대해서는, 「2ButtonText」(와)과 같은 최초로 윈도우 번호를 매긴 이름의 라벨에 할당할 수 있다.

GUI,Add,Button,,Exit

ButtonExit:
ExitApp

Related

GUI, Gui,Add


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

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

Gui,Add

GUI윈도우에 컨트롤을 추가한다

Gui, Add, ControlType [, Options, Text]

Parameters

인수명설명
ControlType 추가하는 컨트롤의 종류.
현재로서는, 이하의 것이 있다.
자세한 것은 각각의 항을 참조.
Options 각종의 설정을 반각 스페이스에서 단락지어 지정한다.
모든 컨트롤 종별로 공통의 것에 대해서는 후술.
고유의 것에 대해서는, 각각의 컨트롤의 항을 참조.
Text 컨트롤에 표시되는 캡션등을 지정한다.
ControlType에 따라서는, 특수한 지정이 필요한 것도 있다.
자세한 것은 각각의 컨트롤의 항을 참조.

Options

배치 관계

Xn
n에 컨트롤의 수평 위치를 윈도우의 클라이언트 영역의 좌상으로부터의 상대 좌표로 지정.(례:X100)
생략시는 자동적으로 결정된다.
Yn
n에 컨트롤의 수직 위치를 윈도우의 클라이언트 영역의 좌상으로부터의 상대 좌표로 지정.
생략시는 자동적으로 결정된다.
x+n
컨트롤의 수평 위치를, 직전에 추가한 컨트롤의 우단으로부터의 거리로 지정한다.n에는 부의 값도 지정 가능(례:x+-10)
y+n
컨트롤의 수직 위치를, 직전에 추가한 컨트롤의 하단으로부터의 거리로 지정한다.n에는 부의 값도 지정 가능(례:y+-10)
xp+n
컨트롤의 수평 위치를, 직전에 추가한 컨트롤의 좌단으로부터의 거리로 지정한다.
GroupBox의 안쪽에 컨트롤을 배치하고 싶을 때에 사용한다.
yp+n
컨트롤의 수직 위치를, 직전에 추가한 컨트롤의 상단으로부터의 거리로 지정한다.
GroupBox의 안쪽에 컨트롤을 배치하고 싶을 때에 사용한다.
xm[+n|-n|]
컨트롤의 수평 위치를, 좌단으로 설정한다.「x0」라고 달라, 마진(Remarks참조)(은)는 고려된다.
「xm+100」(이)나 「xm-10」(와)과 같이 수치를 지정하면, 마진을 고려한 좌단으로부터 한층 더 지정 피크셀만 늦추어서 배치된다.
ym[+n|-n|]
컨트롤의 수직 위치를, 상단으로 설정한다.「y0」라고 달라, 마진(Remarks참조)(은)는 고려된다.
「ym+100」(이)나 「ym-10」(와)과 같이 수치를 지정하면, 마진을 고려한 상단으로부터 한층 더 지정 피크셀만 늦추어서 배치된다.
Section
그 컨트롤의 위치를 그 후 사용된다xs,ys옵션을 위한 기준 위치로 설정한다.
제일 최초로 배치되는 컨트롤은, 자동적으로 기준 위치로 설정된다.
xs[+n|-n|]
컨트롤의 수평 위치를,Section그리고 설정한 컨트롤과 같은 위치로 설정한다.
「xm+100」(이)나 「xm-10」(와)과 같이 수치를 지정하면, 지정 피크셀만 늦춘 위치로 설정된다.
ys[+n|-n|]
컨트롤의 수직 위치를,Section그리고 설정한 컨트롤과 같은 위치로 설정한다.
「ym+100」(이)나 「ym-10」(와)과 같이 수치를 지정하면, 지정 피크셀만 늦춘 위치로 설정된다.
Wn
n에 컨트롤의 가로폭을 피크셀수로 지정한다.
생략시는, 일부의 컨트롤은Text인수의 내용이 들어가도록(듯이) 자동 설정되어 그 이외의 경우는 font size의15배로 설정된다.
Hn
n에 컨트롤의 높이를 피크셀수로 지정한다.
H옵션과R의 모두 지정되지 않았던 경우, 높이는 자동적으로 결정된다.
DropDownList,ComboBox그럼, 전개된 드롭 다운의 높이의 지정이 된다.(지정하지 않으면 스크린의 높이 가득 전개된다)
wp[+n|-n]
직전에 배치한 컨트롤의 폭으로부터의 상대치로 폭을 지정한다.
「wp」(이)라면 전의 컨트롤과 같은 폭, 「wp+10」(이)라면10피크셀 넓고, 「wp-10」(이)라면10피크셀 좁아진다.
hp[+n|-n]
직전에 배치한 컨트롤의 높이로부터의 상대치로 높이를 지정한다.
Rn
컨트롤의 높이를 텍스트의 행수로 지정.
n에 행수를 지정한다.소수로의 지정도 가능.
H옵션과 함께 사용했을 경우,R옵션 쪽이 우선된다.
GroupBox그럼, 세로 방향에 늘어놓을 수가 있는 컨트롤의 수가 된다.
DropDownList,ComboBox그럼, 전개된 드롭 다운에 한 번에 표시되는 항목수가 변경된다.

실행 제어 관계

Vn
컨트롤의 입력 내용을 취득하는 변수명을 설정.
n에 변수명을 지정한다.(례:「vName」)
글로벌 변수나 함수내의 스태틱 변수,ByRef인수로 건네받은 글로벌 변수를 지정할 수 있다.
입력 내용을 변수에 반영시키려면 , 「GUI, Submit」(을)를 실행할 필요가 있다.
유저가 값을 입력하는 타입의 컨트롤 이외에도, 변수를 할당해 두는 것으로 「GuiControl」(이)나 「GuiControlGet」커멘드로, 할당한 변수명을 사용해 컨트롤을 지정할 수 있다.
Gn
그 컨트롤이 클릭이나 선택의 변경등의 조작을 하셨을 때에 실행되는 써브루틴을 설정한다.
n에 써브루틴 라벨을 지정한다.
예를 들어, 「gClicked」라고 지정하면 「Clicked」라고 하는 써브루틴이 실행되게 된다.
「gCancel」라고 하는 지정은 특수하고, 「Cancel」라고 하는 라벨이 존재하지 않는 경우, 「GUI, Cancel」의 동작이 대신에 실행되게 된다.
실행되는 써브루틴내에서는, 편입 변수A_GuiControlEvent그리고 더블 클릭 등 특수한 조작을 하신 것을 알 수 있다.(Text,Pictrue,Radio,ListBox등)
HwndN
N그리고 지정한 이름의 변수에 작성된 컨트롤의 윈도우 핸들을 격납한다.(례:「HwndHandle」)
Gui,Add시간만 유효.

스타일 관계

Redraw
표시 내용에 변화가 있었을 때에 재묘화를 실시한다.
디폴트로ON(이)가 되어 있다.
리스트뷰등에서 대량의 항목을 추가·삭제·변경하기 전에GuiControl,-Redraw,ControlID그리고 재묘화를 정지해, 종료후에+Redraw그리고 재개시키는 것으로 퍼포먼스를 개선할 수 있다.
Cn
문자색을 지정.n에색의 이름(이)나RRGGBB형식의 칼라 코드와 함께 지정한다.(례1:cRed,례2:cFFCC99)
BackGround
Gui,Color그리고 설정한 컨트롤의 배경색을 적용한다(디폴트)
「-BackGround」라고 지정하는 것으로, 설정을 무시해 시스템의 디폴트 배색을 사용한다.
Disabled
컨트롤을 조작할 수 없게 한다
Disabled0/Disabled1(으)로 하는 것으로, 조작 가능/불가능하게 하는 일도 가능.
Hidden
컨트롤을 최초부터 비표시로 한다.
Control, Show」(으)로 표시 당한다.
Hidden0/Hidden1(으)로 하는 것으로, 표시/비표시로 하는 일도 가능.
Left
Button의 텍스트를 왼쪽 가지런히 해로 한다
Right
텍스트를 오른쪽맞춤으로 한다
CheckBox(이)나RadioButton그럼, 체크 박스의 부분도 우측이 된다.
Center
텍스트를 centering로 한다
-TabStop
Tab키에 의한 포커스의 이동으로 이동 대상으로 하지 않는다
-Wrap
텍스트가 가로폭에 들어가지 않는 경우에, 자동적으로 반환을 실시하지 않게 한다.
(일부의 환경에서는,CheckBox(와)과RadioBox의 가로폭의 자동 산출이 이상하고, 가로폭을 지정하지 않으면1문자만 부족하게 되어2행에 되접어 꺾여 버리므로, 이 옵션으로 반환을 잃으면 좋다)
VScroll/-VScroll
세로 스크롤 바를 표시한다(일부의 종류의 컨트롤에서만 유효)
HScroll/-HScroll
옆스크롤 바를 표시한다(일부의 종류의 컨트롤에서만 유효)
ListBox그럼, 스크롤 할 수 있는 폭이 강제적으로 윈도우의 폭의3배에 고정된다.
「HScroll200」(와)과 같이 후에 수치를 지정하면, 스크롤 할 수 있는 폭을 지정할 수 있다.
Border
컨트롤의 주위에 테두리를 표시한다.
Theme/-Theme
컨트롤 마다WindowsXP의 테마를 적용할지를 설정한다.
[+/-]0xNNNNNNNN
컨트롤의 스타일을8자리수의16진수치로 지정한다.
자세한 것은스타일 일람(을)를 참조.
부호가 생략 되었을 경우는, 「+」라고 보인다.
[+/-]E0xNNNNNNNN
컨트롤의 확장 스타일을8자리수의16진수치로 지정한다.
자세한 것은스타일 일람(을)를 참조.
부호가 생략 되었을 경우는, 「+」라고 보인다.

Remarks

윈도우에 최초로 컨트롤을 추가할 경우에, 자동적으로 윈도우가 작성된다.

X/Y옵션으로 좌표를 지정하지 않았던 경우, 컨트롤의 위치는 자동적으로 결정된다.
최초로 추가되는 컨트롤은, 윈도우의 좌상에 배치되어 2번째 이후의 컨트롤은, 직전의 컨트롤의 아래 쪽에 다른 컨트롤과 겹치지 않게 배치된다.
X/Y 중 다른 한쪽만 지정했을 경우, 또 하나의 좌표만이 자동적으로 결정된다.

컨트롤의 사이즈도, 컨트롤의 종류나 텍스트의 내용등에 의해서 자동적으로 결정된다.

자동 레이아웃시에는, 다른 컨트롤로부터 일정한 간격을 열어서 배치된다.
상하의 간격은 선택되고 있는 폰트의 높이의1.25배, 좌우의 간격은0.75배가 된다.
Gui,Show」(으)로 윈도우가 최초로 표시될 때도, 폭이나 높이가 지정되지 않는 이상 이 마진을 고려해 사이즈가 결정된다.

Related

GUI


AutoHotKey(오토핫키) 설명서 GUI

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

GUI

입력 폼 등에 사용할 수 있다GUI(을)를 작성/조작한다

아래와 같은 서브 커멘드가 있다.
설명의 양이 많기 때문에 항을 나눈다.

GUI, Add, ControlType [, Options, Text]
윈도우에 컨트롤을 추가한다
추가할 수 있는 컨트롤에는 이하의 것이 있다.
Text, Edit, UpDown, Hotkey, Picture, GroupBox, Button, Checkbox, Radio, DropDownList, ComboBox, ListBox, ListView, Slider, Progress, DateTime, MonthCal, Tab
GUI, Tab [, Item, ControlNo]
탭 콘트롤이 있을 때, 향후 배치하는 컨트롤을 어느 탭 시트에 배치하는지를 변경
GUI,ListView,ListViewName
리스트뷰 조작계 함수로 대상이 되는 리스트뷰를 변경한다.
GUI, Menu [, MenuName]
윈도우에 도구모음을 추가/삭제한다
GUI, Color [, WindowColor, ControlColor]
윈도우 및 컨트롤의 배경색을 설정한다
GUI, Font [, Options, FontName]
이 이후에 추가되는 컨트롤의 폰트를 변경한다
GUI, Margin [,X, Y]
컨트롤 위치의 자동 결정시에 시작될 수 있는 마진을 설정
GUI, Show [, Options, Title]
윈도우를 표시/표시 상태의 변경
GUI, Hide
윈도우를 비표시로 한다
GUI, Maximize
윈도우를 최대화한다
GUI, Minimize
윈도우를 최소화한다
GUI, Restore
윈도우를 바탕으로 되돌린다
GUI, Flash [,Off]
윈도우의 타이틀 바와 태스크바의 색을 반전시킨다.이것을 이용해 타이틀 바를 점멸시킬 수 있다.
GUI, Submit [, NoHide]
컨트롤 상태나 내용을 지정된 변수에 반영시킨다
GUI, Cancel
변수에 내용을 반영시키지 않고 , 윈도우를 비표시로 한다
GUI, Destroy
윈도우를 완전하게 파기해, 메모리나 system resource를 개방한다
GUI, +/-Option
윈도우의 옵션을 추가/삭제한다
GUI, Default
디폴트의 윈도우를 변경한다

Remarks

윈도우의 생성

윈도우는Add그리고 최초로 컨트롤이 배치될 때 만들어진다.
윈도우의클래스명(은)는 「AutoHotkeyGUI」.
Gui,Show그리고 타이틀을 지정해 표시하기 전의 타이틀은, 스크립트의 파일명 부분.

복수 윈도우

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

Gui, 2:Add, Text,, Text for about box.
Gui, 2:Show

기본적으로 디폴트의 윈도우 번호는 「1」이지만,2번째 이후의 윈도우상의GUI조작 이벤트(컨트롤의 조작시나 도구모음의 아이템 등)그리고 실행된 스렛드에서는, 그 윈도우가 디폴트 윈도우가 된다.
디폴트 윈도우는,Gui,2:Default(와)과 같이 해 변경할 수 있다.

Font서브 커멘드로의 폰트의 설정은, 윈도우 마다 보관 유지된다.

특수 써브루틴 라벨

GuiEscape,GuiClose등이 특별한 이름의써브루틴 라벨하지만 존재하면, 윈도우에 대해서 특정의 조작을 했을 때 그 써브루틴이 실행되게 된다.
현재 준비되어 있는 특수 써브루틴에는 이하의 것이 있다.

2번째 이후의 윈도우의 이벤트는, 「2GuiEscape」(와)과 같이 전에 숫자를 추가한 이름의 라벨로 정의한다.

GuiEscape
Escape키를 눌렀을 때에 실행된다.
라벨이 존재하지 않는 경우,Escape키를 눌러도 아무것도 일어나지 않는다.
GuiClose
윈도우를 닫으려고 했을 때에 실행된다.
라벨이 존재하지 않는 경우, 윈도우는 단지 비표시가 된다(Gui,Cancel(와)과 같은 동작)
GuiSize
윈도우가 리사이즈, 최소화, 최대화, 복원되었을 때에 실행된다.
A_GuiWidth,A_GuiHeight변수에 클라이언트 영역의 새로운 폭과 높이가 격납된다.
또,A_EventInfo변수와ErrorLevel변수에 이하의 값이 격납된다.
0
리사이즈 또는 최대화·최소화로부터의 복원
1
최소화
2
최대화
GuiDropFiles
파일이나 폴더가 드러그&드롭 되었을 때에 실행된다.
이 이벤트의 스렛드가 실행되고 있는 동안은, 드러그&드롭은 무시된다.
A_GuiEvent변수와A_GuiControlEvent변수에는 드롭 된 파일의 파일명이 개행 단락으로 격납된다.
A_GuiControl변수에는 드롭처의 컨트롤에 관련지을 수 있었던 변수명인가, 그것이 없으면 컨트롤의 텍스트가 격납된다.컨트롤에 드롭 되었으므로 없으면, 비운다.
A_EventInfo변수와ErrorLevel변수에는, 드롭 된 파일의 수가 격납된다.
GuiX(와)과GuiY변수에는, 드롭을 한 좌표가 윈도우의 좌상으로부터의 상대 좌표로 격납된다.
Gui,-E0x00000010」(으)로 확장 스타일WS_EX_ACCEPTFILES(을)를 해제하면, 일시적으로 드러그&드롭 접수를 무효로 할 수 있다.
Gui,+E0x00000010」(으)로 다시 유효하게 할 수 있다.
GuiContextMenu
윈도우의 타이틀 바와 도구모음을 제외한 클라이언트 부분을 오른쪽 클릭했을 때에 실행된다.Apps키나Shift+F10(을)를 눌렀을 때에도 실행된다.
이 써브루틴은, 벌써 스렛드가 실행중에서도 새롭게 실행 개시된다.
A_GuiEvent변수에는, 오른쪽 클릭에 의한 이벤트 발생이라면 「RightClick」(이)가, 키 조작에 의한 발생이라면 「Normal」(이)가 격납된다.
A_GuiControl변수에는 클릭된 컨트롤에 관련지을 수 있었던 변수명인가, 그것이 없으면 컨트롤의 텍스트가 격납된다.컨트롤이 클릭되었으므로 없으면, 비운다.
A_EventInfo변수에는, 리스트 박스나 리스트뷰의 포커스를 가지는 행 번호가 격납된다.(다만, 오른쪽 클릭에서는 포커스는 이동하지 않는다)1행목은 「1」(이)가 된다.리스트 박스나 리스트뷰가 아니면 「0」(이)가 된다.
GuiX(와)과GuiY변수에는, 이벤트가 발생했을 때의 마우스 커서의 좌표가 윈도우의 좌상으로부터의 상대 좌표로 격납된다.키 조작에 의해서 기동되었을 때에도 똑같이 격납된다.

아래와 같이 써브루틴의 전에 복수의 라벨을 쓰면, 복수의 이벤트에 하나의 동작을 할당할 수 있다.

GuiEscape:
GuiClose:
ButtonCancel:
Gui, Cancel ; All of the above labels will execute this subroutine.
return 

GUI커멘드의 테스트를 할 때는, 아래와 같은 할당이 추천.
보통으로 윈도우를 닫은 것 만으로는 스크립트가 종료하지 않기 때문에, 윈도우를 닫았을 때에 스크립트가 종료하도록(듯이) 해 준다.

GuiClose:
ExitApp

Button컨트롤의 디폴트 써브루틴 라벨

Button컨트롤에서는, 「G」옵션으로 써브루틴을 지정하지 않아도, 자동적으로 디폴트의 라벨을 할당할 수 있다.
예를 들어,Text인수가 「Text」의 버튼에서는, 「ButtonText」라고 하는 라벨에 할당할 수 있다.(해당하는 라벨이 존재하면)
다만,Text인수에 반각 스페이스나 「&」, 개행 문자등이 포함되는 경우, 그러한 문자를 제외한 문자열이 사용된다.

2번째 이후의 윈도우의 버튼에 대해서는, 「2ButtonText」(와)과 같은 최초로 윈도우 번호를 매긴 이름의 라벨에 할당할 수 있다.

GUI,Add,Button,,Exit

ButtonExit:
ExitApp

Tab네비게이션

작성한 윈도우는, 일반적인 윈도우와 같이Tab키로 포커스를 다른 컨트롤로 이동할 수 있다.
이동하는 순서는, 컨트롤이 윈도우에 추가된 차례.
윈도우가 표시될 때는, 최초의NoTab옵션을 지정되어 있지 않은 포커스도 비치는 컨트롤에 포커스가 세트 된다.

액세스 키

일부의 컨트롤은, 텍스트에 「&A」(와)과 같이&+영숫자를 넣는 것으로, 액세스 키를 설정할 수 있다.
액세스 키는 「A」(와)과 같이 언더라인 첨부의 문자로 표시되어Alt+문자 키로 그 컨트롤을 클릭했을 때의 동작을 한다.
Text(이)나GroupBox그럼, 다음에 추가한 컨트롤에 포커스가 옮긴다.
복수의 컨트롤에 같은 액세스 키를 할당할 수 있고 있는 경우, 액세스 키를 누를 때 마다 다음의 해당하는 컨트롤에 포커스가 이동한다.

「&&」라고 쓰는 것으로, 텍스트중에 「&」(을)를 표시할 수 있다.

자동 레이아웃

컨트롤을 추가할 때,X/Y옵션으로 좌표를 지정하지 않았던 경우, 컨트롤의 위치는 자동적으로 결정된다.
최초로 추가되는 컨트롤은, 윈도우의 좌상에 배치되어 2번째 이후의 컨트롤은, 직전의 컨트롤의 아래 쪽에 다른 컨트롤과 겹치지 않게 배치된다.
X/Y 중 다른 한쪽만 지정했을 경우, 또 하나의 좌표만이 자동적으로 결정된다.

컨트롤의 사이즈도, 컨트롤의 종류나 텍스트의 내용등에 의해서 자동적으로 결정된다.

자동 레이아웃시에는, 다른 컨트롤로부터 일정한 간격을 열어서 배치된다.
디폴트에서는, 상하의 간격은 선택되고 있는 폰트의 높이의1.25배, 좌우의 간격은0.75배가 된다.
마진의 폭은,Gui,Margin」(으)로 변경할 수 있다.
Gui,Show」(으)로 윈도우가 최초로 표시될 때도, 폭이나 높이가 지정되지 않는 이상 이 마진을 고려해 사이즈가 결정된다.

윈도우의 아이콘

윈도우의 아이콘에는, 윈도우가 작성될 때 task tray 아이콘으로 하고 사용되고 있던 아이콘이 사용된다.
task tray 아이콘은 「Menu, Tray, Icon」(으)로 설정할 수 있다.

이벤트 호출시의LastFoundWindow

윈도우 컨트롤의 조작에 의해서 신규 스렛드로 써브루틴이 불려 갈 때 ,LastFoundWindow(으)로서 컨트롤을 가지는 윈도우가 기억된다.
이것에 의해, 각종 윈도우 조작 커멘드로 해당 윈도우를 조작하고 싶을 때, 윈도우의 지정을 생략 할 수 있다.

상주

GUI커멘드를 포함하고 있는 스크립트는,상주 상태한편#SingleInstance(복수 실행 불가)(이)가 된다.

컨트롤의 조작

작성했다GUI위의 컨트롤을 조작하려면 ,GuiControl,GuiControlGet커멘드를 사용한다.

Related

GuiControl, GuiControlGet, Menu, Control, ControlGet, SplashImage, MsgBox, FileSelectFile, FileSelectFolder

Example(s)

Example #1: Simple input-box

Gui, add, text,, First name:
Gui, add, text,, Last name:
Gui, add, edit, vFirstName ym  ; The ym option starts a new column of controls.
Gui, add, edit, vLastName
Gui, add, button, default, OK  ; The label ButtonOK (if it exists) will be run when the button is pressed.
Gui, show,, Simple Input Example
return  ; End of auto-execute section. The script is idle until the user does something.

GuiClose:
ButtonOK:
Gui, submit  ; Save the input from the user to each control's associated variable.
MsgBox You entered "%FirstName% %LastName%".
ExitApp

Example #2: Tab control

Gui, add, tab,, First Tab|Second Tab|Third Tab
Gui, add, checkbox, vMyCheckbox, Sample checkbox
Gui, tab, 2
Gui, add, radio, vMyRadio, Sample radio1
Gui, add, radio,, Sample radio2
Gui, tab, 3
Gui, add, edit, vMyEdit r5  ; r5 means 5 rows tall.
Gui, tab  ; i.e. subsequently-added controls will not belong to the tab control.
Gui, add, button, default xm, OK  ; xm puts it at the bottom left corner.
Gui, show
return

ButtonOK:
GuiClose:
GuiEscape:
Gui, submit
MsgBox You entered:`n%MyCheckbox%`n%MyRadio%`n%MyEdit%
ExitApp

Example #3: ListBox containing files in a directory

Gui, Add, Text,, Pick a file to launch from the list below.`nTo cancel, press ESCAPE or close this window.
Gui, Add, ListBox, vMyListBox gMyListBox w640 r10
Gui, Add, Button, Default, OK
Loop, C:\*.*  ; Change this folder and wildcard pattern to suit your preferences.
{
	GuiControl,, MyListBox, %A_LoopFileFullPath%
}
Gui, Show
return

MyListBox:
if A_GuiControlEvent <> DoubleClick
	return
; Otherwise, the user double-clicked a list item, so treat that the same as pressing OK.
; So fall through to the next label.
ButtonOK:
GuiControlGet, MyListBox  ; Retrieve the ListBox's current selection.
MsgBox, 4,, Would you you like to launch the file or document below?`n`n%MyListBox%
IfMsgBox, No
	return
; Otherwise, try to launch it:
Run, %MyListBox%,, UseErrorLevel
if ErrorLevel = ERROR
	MsgBox Could not launch the specified file.  Perhaps it is not associated with anything.
return

GuiClose:
GuiEscape:
ExitApp

Example #4: On-screen display (OSD)

CustomColor = EEAA99  ; Can be any RGB color (it will be made transparent below).
Gui, Color, %CustomColor%
Gui, Font, s24
Gui, Add, Text, vMyText cLime, XXXXX YYYYY  ; XX & YY serve to auto-size the window.
Gui, +AlwaysOnTop +LastFound   ; Make it always-on-top and make it the last found window.
; Make all pixels of this color transparent and make the text itself translucent (150):
WinSet, TransColor, %CustomColor% 150
Gui, -Caption  ; Remove the borders. Due to a quirk in Windows, this must be done after transparency.
SetTimer, UpdateOSD, 500
Gosub, UpdateOSD  ; Make the first update immediate rather than waiting for the timer.
Gui, Show, x0 y400
return

UpdateOSD:
MouseGetPos, MouseX, MouseY
GuiControl,, MyText, X%MouseX%, Y%MouseY%
return

Example #5: Simple image viewer.

Gui, +Resize
Gui, Add, Button, default, &Load New Image
Gui, Add, Radio, ym+5 x+10 vRadio checked, Load &actual size
Gui, Add, Radio, ym+5 x+10, Load to &fit screen
Gui, Add, Pic, xm vPic
Gui, Show
return

ButtonLoadNewImage:
FileSelectFile, file,,, Select an image:, Images (*.gif; *.jpg; *.bmp; *.png; *.tif; *.ico; *.cur; *.ani; *.exe; *.dll)
if file =
	return
Gui, Submit, NoHide ; Save the values of the radio buttons.
if Radio = 1  ; Display image at its actual size.
{
	width = 0
	height = 0
}
else ; Second radio is selected: Resize the image to fit the screen.
{
	width = %A_ScreenWidth%
	Width -= 28  ; Allow room for borders and margins inside.
	Height = -1 ; Keep aspect ratio seems best.
}
GuiControl,, Pic, *w%width% *h%height% %file%
Gui, Show, xCenter y0 AutoSize, %file%  ; Resize the window to match the picture size.
return

GuiClose:
ExitApp

Example #6: Simple text editor with menu bar.

; Create the sub-menus for the menu bar:
Menu, FileMenu, Add, &New, FileNew
Menu, FileMenu, Add, &Open, FileOpen
Menu, FileMenu, Add, &Save, FileSave
Menu, FileMenu, Add, Save &As, FileSaveAs
Menu, FileMenu, Add  ; Separator line.
Menu, FileMenu, Add, E&xit, FileExit
Menu, HelpMenu, Add, &About, HelpAbout

; Create the menu bar by attaching the sub-menus to it:
Menu, MyMenuBar, Add, &File, :FileMenu
Menu, MyMenuBar, Add, &Help, :HelpMenu

; Attach the menu bar to the window:
Gui, Menu, MyMenuBar

; Create the main Edit control and display the window:
Gui, +Resize  ; Make the window resizable.
Gui, Add, Edit, vMainEdit W600 R20
Gui, Show,, Untitled
CurrentFileName =  ; Indicate that there is no current file.
return

FileNew:
GuiControl,, MainEdit   ; Clear the Edit control.
return

FileOpen:
FileSelectFile, SelectedFileName, 3,, Open File, Text Documents (*.txt)
if SelectedFileName =  ; No file selected.
	return
Gosub FileRead
return

FileRead:  ; Caller has set the variable SelectedFileName for us.
FileRead, MainEdit, %SelectedFileName%  ; Read the file's contents into the variable.
if ErrorLevel <> 0
{
	MsgBox Could not open "%SelectedFileName%".
	return
}
GuiControl,, MainEdit, %MainEdit%  ; Put the text into the control.
CurrentFileName = %SelectedFileName%
Gui, Show,, %CurrentFileName%   ; Show file name in title bar.
return

FileSave:
if CurrentFileName =   ; No filename selected yet, so do Save-As instead.
	Goto FileSaveAs
Gosub SaveCurrentFile
return

FileSaveAs:
FileSelectFile, SelectedFileName, S16,, Save File, Text Documents (*.txt)
if SelectedFileName =  ; No file selected.
	return
CurrentFileName = %SelectedFileName%
Gosub SaveCurrentFile
return

SaveCurrentFile:  ; Caller has ensured that CurrentFileName is not blank.
IfExist %CurrentFileName%
{
	FileDelete %CurrentFileName%
	if ErrorLevel <> 0
	{	
		MsgBox The attempt to overwrite "%CurrentFileName%" failed.
		return
	}
}
GuiControlGet, MainEdit  ; Retrieve the contents of the Edit control.
FileAppend, %MainEdit%, %CurrentFileName%  ; Save the contents to the file.
; Upon success, Show file name in title bar (in case we were called by FileSaveAs):
Gui, Show,, %CurrentFileName%
return

HelpAbout:
MsgBox A very simple text editor.
return

GuiDropFiles:  ; Support drag & drop.
Loop, parse, A_GuiControlEvent, `n
{
	SelectedFileName = %A_LoopField%  ; Get the first file only (in case there's more than one).
	break
}
Gosub FileRead
return

GuiSize:
if ErrorLevel = 1  ; The window has been minimized.  No action needed.
	return
; Otherwise, the window has been resized or maximized. Resize the Edit control to match.
NewWidth := A_GuiWidth - 20
NewHeight := A_GuiHeight - 20
GuiControl, Move, MainEdit, W%NewWidth% H%NewHeight%
return

FileExit:     ; User chose "Exit" from the File menu.
GuiClose:  ; User closed the window.
ExitApp

Example: Achieve an effect similar to SplashTextOn.

Gui, +AlwaysOnTop +Disabled -SysMenu
Gui, Add, Text,, Some text to display.
Gui, Show, NoActivate, My Window  ; NoActivate avoids deactivating the currently active window.