AutomationElement.GetClickablePoint 메서드

정의

클릭할 수 있는 지점을 AutomationElement 검색합니다.

public:
 System::Windows::Point GetClickablePoint();
public System.Windows.Point GetClickablePoint();
member this.GetClickablePoint : unit -> System.Windows.Point
Public Function GetClickablePoint () As Point

반품

클라이언트가 이 요소를 클릭하는 데 사용할 수 있는 점의 실제 화면 좌표입니다.

예외

클릭할 수 있는 지점이 없습니다.

해당 UI가 AutomationElement 더 이상 존재하지 않습니다.

예제

다음 코드는 컨트롤에 대한 클릭 가능한 지점을 검색하고 시스템 커서를 해당 지점으로 이동합니다.

// element is an AutomationElement.
System.Windows.Point clickablePoint = element.GetClickablePoint();
System.Windows.Forms.Cursor.Position = 
    new System.Drawing.Point((int)clickablePoint.X, (int)clickablePoint.Y);
' element is an AutomationElement.
Dim clickablePoint As System.Windows.Point = element.GetClickablePoint()
System.Windows.Forms.Cursor.Position = New System.Drawing.Point(CInt(clickablePoint.X), CInt(clickablePoint.Y))

설명

AutomationElement 다른 창에 의해 완전히 가려진 경우 클릭할 수 없습니다.

AutomationElement 다음 조건을 모두 충족하는 경우 클릭할 수 있습니다.

  • 프로그래밍 방식으로 표시되며 UI 자동화 트리에서 사용할 수 있습니다.

  • 부모 컨테이너 내에서 보기로 완전히 스크롤됩니다(있는 경우). 요소가 잘린 경우 클릭할 수 있다는 보장은 없습니다.

  • 요소는 다른 UI 요소에 의해 가려지지 않습니다. 요소가 상위 항목이 아닌 일부 UI 요소에 의해 부분적으로 가려진 경우 클릭할 수 없을 수 있습니다.

  • 요소를 포함하는 창 자체를 클릭할 수 있어야 합니다. 예를 들어 포함된 창이 완전히 투명하면 창을 클릭할 수 없습니다. 마우스 클릭은 아래 창으로 이동하므로 투명 창 내의 컨트롤은 클릭 가능한 점을 반환하지 않습니다.

  • 요소가 컨테이너(예: 목록 또는 트리 뷰)인 경우 클릭하면 컨트롤의 배경이 포커스가 되는 지점이 있어야 합니다. 컨테이너 컨트롤의 모든 부분이 자식 요소에 의해 사용되는 경우 클릭할 수 없습니다.

컨트롤이 UI 자동화 공급자가 클릭할 수 있는 것으로 정의된 지점을 클릭할 때 아무 작업도 수행하지 않는다는 보장은 없습니다. 컨트롤 패턴을 대신 사용하여 컨트롤에 대한 작업을 수행하는 것이 좋습니다.

적용 대상

추가 정보