반응형

AutomationElement 9

[소프트웨어 접근성] 가상 키보드 만들기 8 - 가상 키보드 만들기

[소프트웨어 접근성] 가상 키보드 만들기 8 - 가상 키보드 만들기 윈도우즈 폼 응용 프로젝트를 추가한 후에 키보드 이벤트와 마우스 이벤트 처리를 위한 WrapNative 클래스를 추가하세요. 이 부분은 앞에서 설명한 부분이라 별도의 설명은 생략할게요. 아래의 소스 코드를 참고하세요.

[소프트웨어 접근성] UI 자동화 요소 탐색기 만들기 실습- 프로세스, 자동화 요소 래퍼

UI 자동화 요소 탐색기 만들기 실습 - 프로세스, 자동화 요소 래퍼 [그림] 작성할 UI 자동화 요소 탐색기 프로세스 목록을 리스트 상자에 표시하고 선택한 프로세스 정보를 기억할 수 있게 래핑한 프로세스 클래스를 추가합시다. WrapProcesss 클래스에 관한 설명은 초점 제어기에서 다루었습니다. 참고하시기 바랍니다. [소프트웨어 접근성] 초점 제어기 만들기 실습 using System.Windows.Automation; namespace UsingTreeWalker { public class WrapAE { public AutomationElement AE { get; private set; } public string Name { get { return AE.Current.Name; } } pub..

[소프트웨어 접근성] 초점 제어기 만들기 실습

[소프트웨어 접근성] 초점 제어기 만들기 실습 이번에는 SetFocus 메서드를 이용하여 원하는 자동화 요소로 초점을 옮기는 프로그램을 작성합시다. [그림] 초점 제어기 실행화면 초점 제어기를 만들기 전에 타겟 데모 응용 프로그램을 만들기로 합시다. 타겟 데모 응용 프로그램은 12개의 버튼이 있고 1개의 Label이 있습니다. 이 프로그램은 버튼에 초점이 오면 어느 버튼에 초점이 왔는지 Label에 표시하는 응용 프로그램입니다. 먼저 Windows Forms 응용 프로젝트를 생성하세요. 그리고 Form1에 버튼 12개와 Label 1개를 배치하세요. 그리고 Label의 이름 속성을 lb_focus로 설정합니다. Fom1의 FormLoad 이벤트 핸들러를 추가하여 각 버튼에 초점이 왔을 때 lb_focus..

[S/W 접근성] 윈도우 옵저버 실습

윈도우 옵저버 실습 이번에는 컴퓨터 시스템에 윈도우가 열고 닫는 것을 관찰하는 윈도우 옵저버를 만들어 봅시다. [그림] 윈도우 옵저버 실행 화면 Form1에는 ListBox 컨트롤(Name: lbox_event)을 추가하였고 Dock속성을 Fill로 주었습니다. 윈도우 닫힘 자동화 이벤트에서는 닫힌 윈도우의 자동화 요소를 전달하지 않습니다. 이를 처리하기 위해 자동화 요소를 래핑한 클래스를 만들어서 내부에서 이를 처리할게요. public class EAE { 윈도우 닫힘 이벤트를 멤버로 추가합니다. public event AutomationEventHandler OnClose; 자동화 요소 이름 가져오기 속성을 제공합시다. public string Name { get; private set; } 생성자에..

[S/W 접근성] 테이블 정보 탐색기 실습

테이블 정보 탐색기 실습 이번에는 TablePattern을 이용하여 실행하고 있는 다른 프로그램의 테이블 정보를 얻어오는 프로그램을 작성하는 실습을 진행할게요. 실습에서는 간단한 회원 정보를 관리하는 타겟 데모를 만들고 테이블 정보를 탐색하는 탐색기 프로그램을 만듭시다. [그림] 시연화면 (인덱스가 0부터 시작합니다. 그리고 행과 열이 반대로 표시하고 있습니다. 데이터가 없을 때 예외는 처리하지 않았습니다.) 먼저 데모 타겟을 Windows Forms 응용 프로그램 프로젝트로 생성하세요. 그리고 컨트롤을 배치합니다. [그림] 데모 타켓 컨트롤 배치 using System; using System.Windows.Forms; namespace 데모_타겟 { public partial class Form1 :..

[S/W 접근성] AutomationElement 메서드

3.2 AutomationElement 메서드 AutomationElement 클래스에는 특정 조건에 맞는 자동화 요소를 탐색하거나 어떠한 패턴에 해당하는지 검색하는 등의 작업을 할 수 있게 다양한 메서드를 제공하고 있습니다. 멤버 이름 설명 Ancestors 상위 항목을 포함 Children 지계 자식 Descendants 하위 항목 Element 자신 Parent 상위 요소(지원하지 않음) Subtree 서브 트리 [표 3.4] TreeScope 열거형 멤버 검색 조건으로 Condition은 필터링에 사용할 조건입니다. 다음은 모든 자식 요소의 개수를 구하는 로직입니다.Condition condition = new OrCondition( Condition.TrueCondition, Condition...

[S/W 접근성] 자동화 요소

3. 자동화 요소 UI 자동화 기술에서는 UI 자동화 요소를 AutomationElement 클래스로 제공합니다. 자동화 요소에는 UI 자동화 클라이언트 응용 프로그램에서 사용할 수 있는 식별자를 제공하고 있으며 자동화 요소의 정보를 참조할 수 있는 속성을 제공합니다. 네임스페이스: System.Windows.Automation어셈블리: UIAutomationClient.dll 3.1 AutomationElement 속성 AutomationElement 클래스에서는 UI 자동화 요소의 정보를 참조할 수 있는 속성을 노출하고 있습니다. 다음은 AutomationElement 개체에서 제공하는 속성입니다. 속성명 형식 설명 AcceleratorKey string 액셀러레이터 키 조합 문자열 AccessKey..

[S/W 접근성] 포커스 트래커 만들기

2. 5 포커스 트래커 만들기 이번에는 UI 자동화 기술을 사용해서 응용을 제작하는 간단한 예를 소개하겠습니다. 일반적으로 UI 자동화 기술을 익힐 때 제일 먼저 작성하는 응용으로 포커스 트레커가 있습니다. 포커스 트래커란 시스템에 유일한 포커스를 잡은 UI 요소가 바뀔 때마다 이벤트를 발생하여 포커스를 소유한 UI 요소의 정보를 수집하는 응용입니다. 먼저 C# 언어로 콘솔 응용 프로그램을 생성합니다. 그리고 UI 자동화 기술에 필요한 어셈블리를 참조 추가합니다. [그림 2.1] UI 자동화 기술 참조 추가 UI 자동화 기술에서는 시스템의 포커스가 변경되었을 때 처리하기 위한 이벤트 핸들러를 AutomationFocusChangedEventHadler 형식으로 제공합니다. 네임스페이스: System.Wi..

반응형