다음을 통해 공유


메뉴 컨트롤 유형

이 항목에서는 메뉴 컨트롤 형식에 대한 Microsoft UI 자동화 지원에 대한 정보를 제공합니다.

메뉴 컨트롤을 사용하면 명령 및 이벤트 처리기와 연관된 요소를 계층적으로 구성할 수 있습니다. 일반적인 Microsoft Windows 애플리케이션에서는, 메뉴 모음에 몇 가지 메뉴 단추(예: 파일, 편집, )가 있고 각 메뉴 단추에 메뉴가 표시됩니다. 메뉴 하나에 메뉴 항목 컬렉션(예: 새로 만들기, 열기, 닫기)이 들어 있으며, 클릭하면 확장되어 추가 메뉴 항목이 표시되거나 특정 작업을 수행할 수 있습니다.

다음 섹션에서는 메뉴 컨트롤 형식에 필요한 UI 자동화 트리 구조, 속성, 컨트롤 패턴 및 이벤트를 정의합니다. UI 자동화 요구 사항은 UI 프레임워크/플랫폼이 컨트롤 형식 및 컨트롤 패턴에 대한 UI 자동화 지원을 통합하는 모든 메뉴 컨트롤에 적용됩니다.

이 항목에는 다음과 같은 섹션이 포함되어 있습니다.

일반적인 트리 구조

다음 표에서는 메뉴 컨트롤과 관련된 UI 자동화 트리의 일반적인 컨트롤 및 콘텐츠 뷰를 설명하고 각 보기에 포함할 수 있는 내용을 설명합니다. UI 자동화 트리에 대한 자세한 내용은 UI 자동화 트리 개요를 참조하세요.

컨트롤 뷰 콘텐츠 뷰
  • 메뉴
    • MenuItem(1개 또는 다수)
    • 기타 컨트롤(0개 이상)
  • 메뉴
    • MenuItem(1개 또는 다수)
    • 기타 컨트롤(0개 이상)

 

메뉴 컨트롤은 UI 자동화 트리의 컨트롤 뷰 및 콘텐츠 뷰에 항상 표시됩니다. 메뉴 컨트롤은 해당 정보가 참조하는 컨트롤 아래에 표시됩니다. UI 자동화 클라이언트는 메뉴 컨트롤에서 전달되는 정보를 지속적으로 얻을 수 있도록 UIA_MenuOpenedEventId 수신 대기할 수 있습니다. 상황에 맞는 메뉴 컨트롤은 특수한 경우입니다. 데스크톱 또는 최상위 애플리케이션 창의 자식으로 나타날 수 있습니다.

메뉴 컨트롤은 구조 내에서 편집 컨트롤 및 콤보 상자와 같은 다른 컨트롤을 포함할 수 있습니다. 이러한 추가 컨트롤은 컨트롤 및 콘텐츠 뷰의 이전 테이블에 나열된 "기타 컨트롤"에 해당합니다.

관련 속성

다음 표에서는 값 또는 정의가 메뉴 컨트롤 형식과 특히 관련된 UI 자동화 속성을 나열합니다. UI 자동화 속성에 대한 자세한 내용은 UI 자동화 요소에서 속성 검색을 참조하세요.

UI 자동화 속성 참고
UIA_ControlTypePropertyId 메뉴
UIA_IsContentElementPropertyId TRUE 메뉴 컨트롤은 항상 UI 자동화 트리의 콘텐츠 보기에 포함됩니다.
UIA_IsControlElementPropertyId TRUE 메뉴 컨트롤이 UI 자동화 트리의 컨트롤 뷰에 항상 포함됩니다.
UIA_LabeledByPropertyId NULL 일반 메뉴 컨트롤에는 레이블이 필요하지 않습니다.
UIA_NamePropertyId 메모를 참조하세요. 메뉴 컨트롤에는 Name 속성을 설정할 필요가 없거나 하위 메뉴를 연 메뉴 항목과 같이 연결된 컨트롤과 이름이 같을 수 있습니다.

 

필수 컨트롤 패턴

Menu 컨트롤 형식에 필요한 컨트롤 패턴은 없습니다.

필요한 이벤트

메뉴 컨트롤은 화면에 표시되면 UIA_MenuOpenedEventId 이벤트를 발생시켜야 합니다. UIA_MenuOpenedEventId 이벤트에는 컨트롤의 텍스트가 포함됩니다. 화면에서 메뉴가 사라지면 UIA_MenuClosedEventId 이벤트가 발생해야 합니다.

다음 표에서는 메뉴 컨트롤이 지원하는 데 필요한 UI 자동화 이벤트를 나열합니다. 이벤트에 대한 자세한 내용은 UI Automation Events Overview를 참조하세요.

UI 자동화 이벤트 참고
UIA_AutomationFocusChangedEventId
속성 변경 이벤트를 UIA_BoundingRectanglePropertyId.
속성 변경 이벤트를 UIA_IsEnabledPropertyId. 컨트롤이 IsEnabled 속성을 지원하는 경우 이 이벤트를 지원해야 합니다.
속성 변경 이벤트를 UIA_IsOffscreenPropertyId. 컨트롤이 IsOffscreen 속성을 지원하는 경우 이 이벤트를 지원해야 합니다.
UIA_MenuClosedEventId
UIA_MenuOpenedEventId
UIA_StructureChangedEventId

 

개념

UI 자동화 컨트롤 형식 개요

UI 자동화 개요