Control

콘트롤에 다양한 변경을 합니다.

Control, SubCommand , Value, Control, WinTitle, WinText, ExcludeTitle, ExcludeText

매개변수

SubCommand, Value
These are dependent upon each other and their usage is described below.
Control

ClassNN (콘트롤의 클래스이름과 실체 번호) 또는 콘트롤의 텍스트일 수 있습니다. 둘 모두 Window Spy로 알아낼 수 있습니다. 텍스트를 사용할 때, 부합하는 행위는 SetTitleMatchMode로 결정됩니다. 이 매개변수가 비어 있으면, 목표 창의 최상위 콘트롤이 사용됩니다.

콘트롤의 HWND (창 핸들)에 작동시키려면, Control 매개변수를 빈 채로 두고 ahk_id %ControlHwnd%WinTitle 매개변수에 지정하십시오 (이것은 숨은 창에도 작동합니다. DetectHiddenWindows가 꺼져 있어도 상관 없습니다). 콘트롤의 HWND는 전형적으로 ControlGet Hwnd, MouseGetPos, 또는 DllCall()을 통하여 열람됩니다.

WinTitle
목표 창을 식별하는 창 제목 또는 다른 기준. WinTitle 참조.
WinText
존재하면, 이 매개변수는 목표 창 텍스트의 부문자열입니다 (동봉된 Window Spy 유틸리티에 노출됨). 숨은 텍스트는 DetectHiddenText가 켜져 있어야 탐지됩니다.
ExcludeTitle
제목에 이 값이 있는 창은 무시합니다.
ExcludeText
텍스트에 이 값이 있는 창은 무시합니다.

부-명령어

For SubCommand, specify one of the following:

Check

라디오 버튼이나 체크 박스를 켭니다 (체크 표시를 함).

Control, Check ,, Control, WinTitle, WinText, ExcludeTitle, ExcludeText

To ensure correct functionality, this sub-command also sets the input focus to the control.

Uncheck

라디오 버튼이나 체크 박스를 끕니다.

Control, Uncheck ,, Control, WinTitle, WinText, ExcludeTitle, ExcludeText

To ensure correct functionality, this sub-command also sets the input focus to the control.

Enable

이전에 꺼져 있다면 콘트롤을 켭니다.

Control, Enable ,, Control, WinTitle, WinText, ExcludeTitle, ExcludeText

Disable

콘트롤을 불능화합니다 ("회색 처리를 함").

Control, Disable ,, Control, WinTitle, WinText, ExcludeTitle, ExcludeText

Show

이전에 숨어 있었다면 콘트롤을 보여줍니다.

Control, Show ,, Control, WinTitle, WinText, ExcludeTitle, ExcludeText

Hide

콘트롤을 감춥니다.

Control, Hide ,, Control, WinTitle, WinText, ExcludeTitle, ExcludeText

If you additionally want to prevent a control's shortcut key (underlined letter) from working, disable the control via the Disable sub-command.

Style

Changes the style of a control.

Control, Style, N , Control, WinTitle, WinText, ExcludeTitle, ExcludeText

<s0>N</s0> 첫 문자가 플러스 또는 마이너스 사인이면 <s1>N</s1>에 있는 스타일이 추가되거나 제거됩니다. 첫 문자가 캐럿 (^)이면, N에 있는 스타일들이 각각 반대 상태로 토글됩니다. 첫 문자가 숫자이면, 그 콘트롤의 스타일이 완전히 덮여 씌여집니다; 즉, N이 됩니다. ErrorLevel은 목표 창/콘트롤이 발견되지 않으면 또는 스타일이 적용되지 않으면 1이 설정됩니다.

어떤 스타일 변경은 WinSet Redraw를 사용하여 전체 창을 다시 그리기를 요구합니다. 또, 스타일 테이블에 스타일 번호들을 나열하고 있습니다. 예를 들어:

Control, Style, ^0x800000, Edit1, WinTitle  ; WS_BORDER 스타일을 그의 반대 상태로 설정합니다.

ExStyle

Changes the extended style of a control.

Control, ExStyle, N , Control, WinTitle, WinText, ExcludeTitle, ExcludeText

See the Style sub-command above for details.

ShowDropDown

Shows the drop-down list of a ComboBox control.

Control, ShowDropDown ,, Control, WinTitle, WinText, ExcludeTitle, ExcludeText

HideDropDown

Hides the drop-down list of a ComboBox control.

Control, HideDropDown ,, Control, WinTitle, WinText, ExcludeTitle, ExcludeText

TabLeft

Moves left by one or more tabs in a SysTabControl32.

Control, TabLeft , Count, Control, WinTitle, WinText, ExcludeTitle, ExcludeText

Count는 생략하거나 비어 있으면 1로 간주됩니다. 대신에 탭을 직접적으로 번호로 선택하려면, 아래의 숫자 5를 이 보다 작은 숫자로 교체하십시오. 원하는 탭 번호로 교체하시면 됩니다. 다른 말로 하면, 0은 첫 번째 탭을 선택하고, 1은 두 번째 탭을 선택합니다. 등등:

SendMessage, 0x1330, 5,, SysTabControl321, WinTitle  ; 0x1330은 TCM_SETCURFOCUS입니다.
Sleep 0  ; 이 줄과 다음 줄은 어떤 탭 콘트롤에는 꼭 필요합니다.
SendMessage, 0x130C, 5,, SysTabControl321, WinTitle  ; 0x130C은 TCM_SETCURSEL입니다.

TabRight

Moves right by one or more tabs in a SysTabControl32.

Control, TabRight , Count, Control, WinTitle, WinText, ExcludeTitle, ExcludeText

See the TabLeft sub-command above for details.

Add

문자열(String)을 새 엔트리로 ListBox, ComboBox (그리고 가능한 다른 유형들) 아래에 추가합니다.

Control, Add, String , Control, WinTitle, WinText, ExcludeTitle, ExcludeText

Delete

N번째 엔트리를 ListBox 또는 ComboBox로부터 제거합니다.

Control, Delete, N , Control, WinTitle, WinText, ExcludeTitle, ExcludeText

N은 첫 엔트리에 대하여 1이 되고 두 번째 엔트리는 2가 됩니다. 등등.

Choose

ListBox 또는 ComboBox에서 N번째 엔트리를 선택합니다.

Control, Choose, N , Control, WinTitle, WinText, ExcludeTitle, ExcludeText

N은 첫 엔트리에 대하여 1이 되고 두 번째 엔트리는 2가 됩니다. 등등. To select or deselect all items in a multi-select listbox, follow this example:

PostMessage, 0x0185, 1, -1, ListBox1, WinTitle  ; Select all listbox items. 0x0185 is LB_SETSEL.

ChooseString

앞 부분이 String에 부합하는 첫 번째 엔트리를 ListBox 또는 ComboBox에서 선택합니다.

Control, ChooseString, String , Control, WinTitle, WinText, ExcludeTitle, ExcludeText

검색은 대소문자를 구분하지 않습니다. 예를 들어, ListBox/ComboBox에 "UNIX Text"라는 항목이 들어 있다면, 단어를 unix (소문자)로 지정해도 충분히 선택할 수 있습니다.

EditPaste

Edit 콘트롤에서 String을 캐럿/삽입 위치에 붙여 넣습니다.

Control, EditPaste, String , Control, WinTitle, WinText, ExcludeTitle, ExcludeText

This does not affect the contents of the clipboard.

에러 처리

[v1.1.04+]: 이 명령어는 실패하면 예외를 던질 수 있습니다. 더 자세한 정보는 실행시간 에러를 참조하십시오.

ErrorLevel은 문제가 있으면 1, 그렇지 않으면 0이 설정됩니다.

논평

To improve reliability, a delay is done automatically after every use of this command (except for the sub-commands Style and ExStyle). 그 지연 시간은 SetControlDelay를 통하여 변경할 수 있습니다.

현재 마우스가 떠 있는 콘트롤의 ClassNN 또는 HWND를 발견하려면, MouseGetPos를 사용하십시오.

창 제목과 텍스트는 대소문자를 구분합니다. 숨은 창은 DetectHiddenWindows가 켜져 있어야 탐지됩니다.

SetControlDelay, ControlGet, GuiControl, ControlGetText, ControlSetText, ControlMove, ControlGetPos, ControlClick, ControlFocus, ControlSend, WinSet

예제

Hides the drop-down list of the first ComboBox.

Control, HideDropDown,, ComboBox1, Some Window Title