Control

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

Control, Cmd [, Value, Control, WinTitle, WinText, ExcludeTitle, ExcludeText]
선택

매개변수

Cmd, Value

아래 리스트 참조.

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

텍스트에 이 값이 있는 창은 무시합니다.

Cmd, Value

CmdValue 매개변수는 서로 의존합니다. 그리고 그 사용법은 아래에 기술합니다.

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

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

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

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

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

Hide: 콘트롤을 감춥니다. 콘트롤의 단축 키(밑줄 문자)를 작동하지 못하도록 막고 싶다면, Control Disable을 통하여 콘트롤을 끄십시오.

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

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

Control, Style, ^0x800000, Edit1, WinTitle  ; WS_BORDER 스타일을 그의 반대 상태로 설정합니다.
선택 | 내려받기

ShowDropDown: 선택이 보이도록 ComboBox 메뉴를 내립니다.

HideDropDown: 위를 반대로 합니다.

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

SendMessage, 0x1330, 5,, SysTabControl321, WinTitle  ; 0x1330 is TCM_SETCURFOCUS.
Sleep 0  ; 이 줄과 다음 줄은 어떤 탭 콘트롤에는 꼭 필요합니다.
SendMessage, 0x130C, 5,, SysTabControl321, WinTitle  ; 0x130C is TCM_SETCURSEL.
선택 | 내려받기

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

Delete, N: N번째 엔트리를 ListBox 또는 ComboBox로부터 제거합니다. N은 첫 엔트리에 대하여 1이 되고 두 번째 엔트리는 2가 됩니다. 등등.

Choose, N: ListBox 또는 ComboBox에서 N번째 엔트리를 선택합니다. N은 첫 엔트리에 1, 두 번째 엔트리에 2가 됩니다. 등등. 다중-선택 리스트박스에서 모든 항목을 선택하거나 해제하려면, 다음 예제를 따르십시오:

PostMessage, 0x185, 1, -1, ListBox1, WinTitle  ; Select all listbox items. 0x185 is LB_SETSEL.
선택 | 내려받기

ChooseString, String: 앞 부분이 String에 부합하는 첫 번째 엔트리를 ListBox 또는 ComboBox에서 선택합니다. 검색은 대소문자를 구분하지 않습니다. 예를 들어, ListBox/ComboBox에 "UNIX Text"라는 항목이 들어 있다면, 단어를 unix (소문자)로 지정해도 충분히 선택할 수 있습니다.

EditPaste, String: Edit 콘트롤에서 String을 캐럿/삽입 위치에 붙여 넣습니다 (클립보드의 내용은 영향을 받지 않습니다).

ErrorLevel

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

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

논평

신뢰성을 개선하기 위하여, 이 명령어를 사용할 때마다 자동으로 지연 시간이 있습니다 (StyleExStyle 제외). 그 지연 시간은 SetControlDelay를 통하여 변경할 수 있습니다.

현재 마우스가 올라와 있는 콘트롤의 ClassNN 또는 HWND를 알아내려면, MouseGetPos를 사용하십시오.

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

관련 항목

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

예제

Control, HideDropDown, , ComboBox1, Some Window Title
선택 | 내려받기