이번에는 자동화 요소 개체로 속성을 검색하는 메서드를 살펴봅시다.
public Object GetCachedPropertyValue ( AutomationProperty property);
public Object GetCachedPropertyValue ( AutomationProperty propery, bool ignore);
public Object GetCurrentPropertyValue ( AutomationProperty property);
public Object GetCurrentPropertyValue ( AutomationProperty propery, bool ignore);
public AutomationProperty[] GetSupportedProperties ( );
다음은 자동화 요소에 지원하는 속성 컬렉션을 구하고 각 속성 이름과 값을 얻어오는 루틴입니다.
aps = dae.GetSupportedProperties();
foreach (AutomationProperty ap in aps)
{
Console.Write("{0}:",Automation.PropertyName(ap));
object value=dae.GetCurrentPropertyValue(AutomationProperty.LookupById(ap.Id));
Console.WriteLine(value);
}
using System; using System.Windows.Automation; using System.Windows; using System.Collections.Generic;
namespace 속성_검색 { class Program { static void Main(string[] args) { AutomationElement ae = AutomationElement.RootElement; Rect rect = ae.Current.BoundingRectangle; AutomationElement sae;
Dictionary<int, AutomationElement> dictionary = new Dictionary<int, AutomationElement>(); for (int x = 0; x < rect.Right; x = x + 20) { for (int y = 0; y < rect.Bottom; y += 20) { sae = AutomationElement.FromPoint(new Point(x, y)); dictionary[sae.Current.NativeWindowHandle] = sae; Console.Write("."); } } Console.WriteLine("요소 개수:{0}", dictionary.Count); InvokePattern ip = null; AutomationProperty[] aps=null; foreach (AutomationElement dae in dictionary.Values) { aps = dae.GetSupportedProperties(); foreach (AutomationProperty ap in aps) { Console.Write("{0}:",Automation.PropertyName(ap)); object value = dae.GetCurrentPropertyValue( AutomationProperty.LookupById(ap.Id)); Console.WriteLine(value); } } Console.ReadKey(); } } } |
[소스 3.2] 화면 좌표로 UI 요소 탐색 후 속성 얻어오기
'프로그래밍 기술 > 소프트웨어 접근성, UI 자동화' 카테고리의 다른 글
[S/W 접근성] DockPattern (0) | 2016.04.19 |
---|---|
[S/W 접근성] 컨트롤 패턴 종류 (0) | 2016.04.19 |
[S/W 접근성] TreeWalker 메서드 (0) | 2016.04.19 |
[S/W 접근성] TreeWalker 개체 참조 (0) | 2016.04.19 |
[S/W 접근성] 자동화 트리 (데스크 톱의 모든 하위 요소 출력) (0) | 2016.04.19 |
[S/W 접근성] AutomationElement 메서드(자동화 요소 개체로 패턴 검색) (0) | 2016.04.19 |
[S/W 접근성] AutomationElement 메서드 (0) | 2016.04.19 |
[S/W 접근성] 자동화 요소 (0) | 2016.04.19 |
[S/W 접근성] 포커스 트래커 만들기 (0) | 2016.04.19 |
[S/W 접근성] UI 자동화 기술 개요 (0) | 2016.04.19 |