다음을 통해 공유


편집 컨트롤(Windows Installer)

편집 컨트롤은 문자열 또는 정수 값 속성과 연결된 편집 필드입니다. Control 테이블의 Property 열에 속성 이름을 입력합니다.

컨트롤 특성

이 컨트롤에서 다음 특성을 사용할 수 있습니다. 이벤트를 사용하여 특성값을 변경하려면 EventMapping 테이블의 ControlEvent에 컨트롤을 구독하고 특성 열에 특성의 식별자를 나열합니다. 이벤트 열에 ControlEvent의 식별자를 입력합니다.

특성 식별자 16진수 비트 설명
IndirectPropertyName 컨트롤과 연결된 간접 속성의 이름입니다. 간접 특성 비트가 설정되면 컨트롤이 이 이름을 가진 속성의 값을 표시하거나 변경합니다. 간접 특성 비트가 설정된 경우 이 이름은 컨트롤 테이블의 속성 열에 나열된 속성의 값이기도 합니다.
위치 대화 상자에서 컨트롤의 위치입니다. 컨트롤의 왼쪽 모서리에 있는 컨트롤의 너비, 높이 및 좌표를 Control 테이블의 너비, 높이, X 및 Y 열에 입력합니다. 길이 및 거리에 설치 관리자 단위를 사용합니다.
PropertyName 이 컨트롤과 연결된 속성의 이름입니다. 간접 특성 비트가 설정되지 않은 경우 컨트롤은 이 이름을 가진 속성의 값을 표시하거나 변경합니다. 이 특성은 컨트롤 테이블의 속성 열에 지정됩니다.
PropertyValue 이 컨트롤에 의해 표시되거나 변경된 속성의 현재 값입니다. 간접 특성 비트가 설정되지 않은 경우 PropertyName 값입니다. Indirect 특성 비트가 설정된 경우 IndirectPropertyName 값입니다. 특성이 변경되면 컨트롤에 새 값이 반영됩니다.
Text 텍스트 문자열의 글꼴 및 글꼴 스타일을 설정하려면 표시된 문자의 문자열 앞에 {\style} 또는 {&style}을 접두사로 묶습니다. 여기서 style은 TextStyle 테이블의 TextStyle 열에 나열된 식별자입니다. 둘 중 어느 것도 없지만 DefaultUIFont 속성이 유효한 텍스트 스타일로 정의된 경우 해당 글꼴이 사용됩니다. 사용자가 입력할 수 있는 문자 수를 지정하려면 글꼴 사양 다음에 {n}을 추가합니다. 여기서 n은 양의 정수입니다.
Visible 0x00000000 0x00000001
숨겨진 컨트롤입니다. 표시되는 컨트롤입니다.
컨트롤 테이블의 속성 열 비트 단어에 이 비트를 포함하면 컨트롤을 만들 때 컨트롤이 표시되거나 숨겨집니다.
ControlCondition 테이블 사용하여 컨트롤을 숨기거나 표시할 수도 있습니다.
Enabled 0x00000000 0x00000002
사용 안 함 상태의 컨트롤입니다. 사용 상태의 컨트롤입니다.
컨트롤을 만들 때 컨트롤을 사용하도록 설정하려면 컨트롤의 특성 열에 있는 비트 단어에 이 비트를 포함합니다.
ControlCondition 테이블 사용하여 컨트롤을 사용하거나 사용하지 않도록 설정할 수도 있습니다.
오목 0x00000000 0x00000004
기본 비주얼 스타일을 표시합니다. 움푹 들어간 3D 모양으로 컨트롤을 표시합니다.
컨트롤 테이블의 특성 열에 비트 단어에 해당 비트를 포함합니다.
간접 0x00000000 0x00000008
컨트롤은 컨트롤 테이블의 속성 열에 속성값을 표시하거나 변경합니다. 컨트롤은 컨트롤 테이블의 속성 열에 식별자가 나열된 속성의 값을 표시하거나 변경합니다.
이 컨트롤과 연결된 속성이 간접적으로 참조되는지 여부를 확인합니다.
정수 0x00000000 0x00000010
컨트롤과 연결된 속성은 문자열 값입니다. 컨트롤과 연결된 속성은 정수 값입니다.
컨트롤을 만들 때 이 특성을 설정하려면 컨트롤 테이블의 특성 열의 비트 단어에 이 비트를 포함합니다.
RTLRO 0x00000000 0x00000020
컨트롤의 텍스트는 왼쪽에서 오른쪽 읽기 순서로 표시됩니다. 컨트롤의 텍스트는 오른쪽에서 왼쪽으로 읽기 순서로 표시됩니다.
RightAligned 0x00000000 0x00000040
컨트롤의 텍스트가 왼쪽에 맞춰집니다. 컨트롤의 텍스트가 오른쪽에 맞춰집니다.
LeftScroll 0x00000000 0x00000080
스크롤 막대는 컨트롤의 오른쪽에 있습니다. 스크롤 막대는 컨트롤의 왼쪽에 있습니다.
BiDi 0x000000E0 RTLRO, RightAlignedLeftScroll 특성의 조합에 대해 이 값을 설정합니다.
MultiLine 0x00010000 세로 스크롤 막대를 사용하여 여러 줄의 편집 컨트롤을 만듭니다. 컨트롤의 Attributes 열의 비트 단어에 65536을 포함하여 세로 스크롤 막대가 있는 여러 줄의 편집 컨트롤을 만듭니다.
암호 0x00200000 암호를 입력하기 위한 편집 컨트롤을 만듭니다. Control 테이블의 Attributes 열에 있는 값에 2097152를 더하여 각 문자를 컨트롤에 입력할 때 별표(*)로 표시하는 편집 컨트롤을 만듭니다. 암호 특성을 설정하면 설치 관리자가 Edit 컨트롤과 연결된 속성을 로그 파일에 쓸 수 없게 됩니다. 자세한 내용은 기밀 정보가 로그 파일에 기록되지 않도록 방지를 참조하세요.

설명

이 컨트롤은 CreateWindowEx 함수를 사용하여 EDIT 클래스에서 만들 수 있습니다. WS_BORDER, WS_CHILD, WS_TABSTOPWS_GROUP 스타일이 있습니다.

입력할 수 있는 텍스트의 길이는 Control 테이블의 Text 필드 시작 부분에서 중괄호 안에 0부터 2147483646까지의 숫자를 배치하여 제한할 수 있습니다. 예를 들어 텍스트 필드가 {80}으로 시작하는 경우 문자열의 길이는 80자로 제한됩니다. 테이블에 이러한 제한이 제공되지 않거나 0이 지정되면 길이가 가능한 최대 문자(2147483646자)로 설정됩니다. 음수 또는 숫자가 아닌 값은 오류를 생성합니다.

화면 읽기 프로그램과의 호환성을 위해 Edit 컨트롤을 첫 번째 활성 컨트롤로 사용하여 대화 상자를 작성할 때 편집 필드에 속하는 텍스트 필드를 Dialog 테이블의 첫 번째 활성 컨트롤로 만들어야 합니다. 정적 텍스트는 포커스를 맞출 수 없으므로 대화 상자를 만들면 처음에 의도한 대로 편집 필드에 포커스가 생기지만 이렇게 하면 화면 읽기 프로그램이 올바른 정보를 표시할 수 있습니다.

편집 컨트롤과 연결된 속성은 컨트롤이 포커스를 잃을 때만 설정됩니다. 따라서 컨트롤에서 탭하거나 업데이트할 속성에 대해 다른 컨트롤을 선택해야 합니다.