UI 자동화 이벤트 개요
Microsoft UI 자동화 이벤트 알림은 화면 읽기 프로그램 및 화면 돋보기와 같은 보조 기술의 주요 기능입니다. 이러한 UI 자동화 클라이언트는 UI에서 상황이 발생하면 UI 자동화 공급자에서 생기는 이벤트를 추적하고 이 정보를 사용해 최종 사용자에게 알립니다.
클라이언트가 이벤트 알림에 가입했는지 여부에 따라 공급자 애플리케이션에서 선택적으로 이벤트를 발생시키거나 이벤트 수신 가입한 클라이언트가 없는 경우 이벤트를 전혀 발생시키지 않도록 하면 효율성이 향상됩니다.
UI 자동화 이벤트는 다음 범주로 나뉩니다.
이벤트 범주 | 설명 |
---|---|
속성 변경 | UI 자동화 요소 또는 컨트롤 패턴의 속성이 변경될 때 발생합니다. 예를 들어 클라이언트가 애플리케이션 검사 상자 컨트롤을 모니터링해야 하는 경우 IUIAutomationTogglePattern::CurrentToggleState 속성에서 속성 변경 이벤트를 수신 대기하도록 등록할 수 있습니다. 확인란 컨트롤을 선택하거나 선택 취소하면 공급자가 이벤트를 발생시키며 클라이언트가 필요에 따라 동작할 수 있습니다. |
요소 작업 | IUIAutomationInvokePattern을 통해 단추를 클릭하거나 호출하는 경우와 같이 UI의 변경으로 인해 최종 사용자 또는 프로그래밍 활동이 발생할 때 발생합니다. |
구조 변경 | UI 자동화 트리의 구조가 변경되면 발생합니다. 데스크톱에서 새 UI 항목을 표시하거나, 숨기거나, 제거할 때 구조가 변경됩니다. |
전역 데스크톱 변경 | 요소 간에 포커스가 전환되거나 창이 닫히는 경우와 같이 클라이언트에 전역적으로 영향을 미치는 작업이 이루어지면 발생합니다. |
알림 | 앱이 UiaRaiseNotificationEvent 함수를 호출할 때 발생합니다. NotificationKind 는 알림의 유형을 나타냅니다. |
일부 이벤트는 UI 상태가 변경된 것을 의미하지 않을 수도 있습니다. 예를 들어 사용자가 텍스트 입력 필드로 탭한 다음 단추를 클릭하여 필드를 업데이트하는 경우 사용자가 실제로 텍스트를 변경하지 않더라도 UIA_Text_TextChangedEventId 이벤트가 발생합니다. 이벤트를 처리할 때 클라이언트 애플리케이션이 작업을 수행하기 전에 실제로 변경된 사항이 있는지 여부를 확인해야 할 수도 있습니다.
다음 이벤트는 UI의 상태가 변경되지 않은 경우에도 발생할 수 있습니다.
- UIA_AutomationPropertyChangedEventId (변경된 속성에 따라 다름)
- UIA_SelectionItem_ElementSelectedEventId
- UIA_Selection_InvalidatedEventId
- UIA_Text_TextChangedEventId
모든 UI 자동화 이벤트에 대한 설명은 이벤트 식별자를 참조하세요.
관련 항목