반응형

프로그래밍 기술/소프트웨어 접근성, UI 자동화 67

[S/W 접근성] TogglePattern, TransformPattern

TogglePattern TogglePattern은 변할 수 있는 상태의 집합에서 순환 형태로 상태를 설정하는 컨트롤에서 지원하는 패턴입니다. System.Object System.Windows.Automation.BasePattern System.Windows.Automation.TogglePattern 네임스페이스: System.Windows.Automation 어셈블리: UIAutomationClient(UIAutomationClient.dll) TogglePttern의 Current 및 Cached 속성으로 TogglePatternInformation 구조체를 접근할 수 있습니다. 그리고 TogglePatternInformation 구조체에는 Toggle 상태를 가져오기 할 수 있는 속성을 제공합..

[S/W 접근성] TextPattern

TextPattern TextPattern은 텍스트 박스처럼 내부에 텍스트를 갖을 수 있는 컨트롤의 패턴입니다. TextPattern 클래스에서는 텍스트 범위와 선택 영역 지원 형식을 가져오는 속성을 제공합니다.public TextPatternRange DocumentRange { get; };public SupportedTextSelection SupportedTextSelection { get; }; TextPatternRange 클래스는 텍스트의 범위를 나타내는 형식입니다. TextPatternRange 클래스에서는 다양한 메서드를 제공합니다.public void AddToSelection();public bool Compare( TextPatternRange range);public int Com..

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

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

[S/W 접근성] TablePattern, TableItemPattern

5.2.11 TablePattern 행과 열 형태로 자식 항목을 보관하는 컨테이너 컨트롤에서 지원하는 패턴입니다. System.Object System.Windows.Automation.BasePattern System.Windows.Automation.GridPattern System.Windows.Automation.TablePattern 네임스페이스: System.Windows.Automation 어셈블리: UIAutomationClient(UIAutomationClient.dll) TablePttern의 Current 및 Cached 속성으로 TablePatternInformation 구조체를 접근할 수 있습니다. 그리고 TablePatternInformation 구조체에는 항목이 선택 상태인지와..

[S/W 접근성] SelectionPattern, SelectionItemPattern

5.2.10 SelectionPattern SelectonPattern은 자식 요소 컬렉션을 갖고 있을 때 선택 가능한 컨테이너 컨트롤 패턴입니다. 그리고 SelectionPattern의 자식 요소는 SelectionItemPattern을 지원합니다. System.Object System.Windows.Automation.BasePattern System.Windows.Automation.SelectionPattern 네임스페이스: System.Windows.Automation 어셈블리: UIAutomationClient(UIAutomationClient.dll) SelectionPattern의 Current 및 Cached 속성으로 SelectionPatternInformation 구조체를 접근할 수 ..

[S/W 접근성] ScrollPattern, ScrollItemPattern

5.2.8 ScrollPattern 스크롤 패턴은 자식 요소 컬렉션을 갖고 있을 때 스크롤 가능한 컨테이너 컨트롤 패턴이며 자식 요소는 ScrollItemPattern을 지원합니다. System.Object System.Windows.Automation.BasePattern System.Windows.Automation.ScrollPattern 네임스페이스: System.Windows.Automation 어셈블리: UIAutomationClient(UIAutomationClient.dll) ScroollPattern의 Current 및 Cached 속성으로 ScrollPatternInformation 구조체를 접근할 수 있습니다. 그리고 ScrollPatternInformation 구조체에는 수평, 수직..

[S/W 접근성] Range 값 제어기 실습

Range 값 제어기 실습 RangeValuePattern 개체를 이용하여 다른 프로세스를 제어하는 프로그램을 만들어 봅시다. 여기에선느 간단하게 데모 타겟 프로그램을 만든 후에 제어하는 프로그램을 만듭시다. [그림] 실행 화면 먼저 데모 타겟은 단순히 메인 Form에 TrackBar 컨트롤을 배치하는 것이 끝입니다. 별도의 소스 코드를 편집하거나 설정할 필요는 없습니다. 이제 Range 값 제어기를 만들기 위해 Windows Forms 응용 프로그램 프로젝트를 추가한 후 자식 컨트롤을 배치하세요. [그림] 컨트롤 배치 using System; using System.Windows.Forms; using System.Diagnostics; using System.Windows.Automation; nam..

[S/W 접근성] MultipleViewPattern, RangeValuePattern

5.2.6 MultipleViewPattern MultipleViewPattern은 리스트 컨트롤처럼 정보 집합이나 컨트롤들을 다른 방식으로 보여줄 수 있는 컨트롤 패턴입니다. System.Object System.Windows.Automation.BasePattern System.Windows.Automation.MultipleViewPattern 네임스페이스: System.Windows.Automation 어셈블리: UIAutomationClient(UIAutomationClient.dll) MultipleViewPattern의 Current 및 Cached 속성으로 MultipleViewPatternInformation 구조체를 접근할 수 있습니다. 그리고 MultipleViewPatternInfo..

[S/W 접근성] InvokePattern 요소 제어하기 실습(응용 만들기)

InvokePattern 요소 제어하기 실습(응용 만들기) 작성한 클래스 라이브러리를 참조 추가할 때는 솔루션 창의 프로젝트의 참조에서 컨텍스트 메뉴를 통해 참조 추가할 수 있습니다. [그림] 어셈블리 참조 추가 이제 Invoke 요소 제어기를 작성합니다. 먼저 프로젝트 추가를 통해 Windows Forms 응용 프로그램을 선택하세요. 물론 WrapLib를 참조 추가 및 UI 자동화 기술에 관한 어셈블리도 참조 추가해야 합니다. 이제 메인 폼의 컨트롤을 배치합시다. [그림] Main 폼 컨트롤 배치 Main 폼에는 버튼 1개와 ListBox 3개를 배치합니다. using System; using System.Windows.Forms; using System.Diagnostics; using System...

[S/W 접근성] InvokePattern 요소 제어하기 실습 (WrapLib 클래스 라이브러리 만들기)

InvokePattern 요소 제어하기 실습 (WrapLib 클래스 라이브러리 만들기) 앞으로 많은 곳에서 Process를 래핑하거나 자동화 요소를 래핑하는 등의 작업은 중복해서 발생합니다. 매 번 같은 작업을 하는 것은 효과적이지 않아 클래스 라이브러리를 만들어서 사용하기로 할게요. 앞으로 이 라이브러리는 추가 및 변경할 때에만 언급하기로 할게요. 먼저 WrapLib 이름으로 클래스 라이브러리를 추가하세요. [그림] 클래스 라이브러리 생성 UI 자동화 기술에 관한 .NET 어셈블리를 참조 추가하세요. 솔루션 탐색기의 프로젝트 참조 노드에 오른쪽 마우스 버튼을 클릭하였을 때의 컨텍스트 메뉴에서 참조 추가하세요. [그림] 참조 추가 기본으로 제공하는 Class1.cs 파일의 속성을 WrapProcess로 ..

반응형