다음을 통해 공유


Rect 구조체

정의

사각형의 위치와 크기를 나타내는 숫자 값을 포함합니다.

public value class Rect
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.FoundationContract, 65536)]
struct Rect
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.FoundationContract), 65536)]
public struct Rect
var rect = {
x : /* Your value */,
y : /* Your value */,
width : /* Your value */,
height : /* Your value */
}
Public Structure Rect
<object property="x,y,width,height"/>
-or-
<object property="x y width height"/>

상속
Rect
특성

Windows 요구 사항

디바이스 패밀리
Windows 10 (10.0.10240.0에서 도입되었습니다.)
API contract
Windows.Foundation.FoundationContract (v1.0에서 도입되었습니다.)

설명

UI 정보를 나타내는 속성에 적용된 경우 Rect 값의 너비 및 높이 값은 디바이스 독립적 픽셀을 나타냅니다. xy 값은 확정되지 않은 참조 프레임을 가지지만(이 값이 적용되는 방식에 따라 다름) 기본 앱 창의 좌표 공간에서 한 점을 나타내는 경우가 많습니다.

자바 스크립트: JavaScript에서 Rect는 x, y, 너비, 높이 가지 데이터 멤버가 있는 개체입니다. 데이터 멤버(필드) 외에 Rect 멤버 목록에 나열된 API는 JavaScript 프로그래밍에 적용되지 않습니다.

XAML 구문에 대한 참고 사항

개체 특성 사용은 Windows 런타임 XAML 구문 분석 규칙에서 기술적으로 허용됩니다. 그러나 일반적으로 사용되지 않으므로 해당 사용량은 표시되지 않습니다.

값 간의 구분 기호로 쉼표가 아닌 공백을 사용할 수 있습니다. 혼합 구분 기호 사용도 허용됩니다.

네 가지 값을 모두 지정해야 합니다. "0,0"은 "x,y"의 암시적 기본값이 아니며 문자열에서 4개 미만의 구성 요소를 구문 분석할 수 있는 다른 규칙이 없습니다.

Rect는 공유 가능한 형식이 아니므로 Rect 요소를 XAML ResourceDictionary 에서 리소스로 선언할 수 없습니다(자세한 내용은 ResourceDictionary 및 XAML 리소스 참조 참조).

사각형 값 및 속성에 의해 해석되는 방법

크기 는 높이와 너비의 동일한 은유를 사용하는 유사한 구조체입니다. 그러나 Rect는 원본점을 지정하지만 Size 는 지정하지 않습니다. 일반적으로 Rect는 그래픽 라이브러리 API에 사용되며 크기 는 앱 UI의 프레젠테이션 및 레이아웃, 특히 적응형 레이아웃(위치 지정이 자동인 경우)에 사용됩니다.

속성에 적용되는 경우 Rect 값의 일반적인 동작은 다음 원칙을 따릅니다.

  • 너비높이는 음수일 수 없습니다.
  • XY 는 음수일 수 있으며, 추가 변환이 없는 한 Rect 정의가 참조의 좌표 프레임 외부에 있습니다.
  • XY 는 0일 수 있습니다. 값 0은 Width 또는 Height에도 유효합니다. 그러나 Width 또는 Height 값이 0인 Rect가 RectangleGeometry에 적용되는 경우 결과 RectangleGeometry 는 렌더링되지 않습니다.
  • X, Y, WidthHeight 는 허용되는 값 측면에서 정수가 아닌 값일 수 있습니다. 그러나 일반적으로 정수 값을 사용합니다. XAML UI는 지점 위치 및 단위 측정값이 하위 픽셀 값을 사용하지 않는 경우에 가장 잘 작동합니다.

Rect의 언어 프로젝션 및 멤버

Microsoft .NET 언어(C# 또는 Microsoft Visual Basic) 또는 Visual C++ 구성 요소 확장(C++/CX)을 사용하는 경우 Rect에는 비데이터 멤버를 사용할 수 있으며 해당 데이터 멤버는 필드가 아닌 읽기-쓰기 속성으로 노출됩니다. .NET API 브라우저의 Rect 를 참조하세요.

C++/WinRT 또는 Windows 런타임 C++ WRL(템플릿 라이브러리)을 사용하여 프로그래밍하는 경우 데이터 멤버 필드만 Rect의 멤버로 존재하며 .NET 프로젝션의 유틸리티 메서드 또는 속성을 사용할 수 없습니다. C++ 코드는 RectHelper 정적 클래스에서 사용할 수 있는 유사한 유틸리티 메서드에 액세스할 수 있습니다.

이 표에서는 .NET 및 C++에서 사용할 수 있는 동일한 메서드를 보여 줍니다.

.NET(Rect) C++(RectHelper)
Rect(Point, Point) FromPoints(Point, Point)
Rect(Point, Size) FromLocationAndSize(Point, Size)
Rect(Double, Double, Double, Double) FromCoordinatesAndDimensions(Single, Single, Single, Single)
아래쪽 GetBottom(Rect)
비어 있음 비어 있음
IsEmpty GetIsEmpty(Rect)
왼쪽 GetLeft(Rect)
오른쪽 GetRight(Rect)
상위 GetTop(Rect)
Contains(Point) Contains(Rect, Point)
같음 Equals(Rect, Rect)
Intersect(Rect) Intersect(Rect, Rect)
Union(Point) Union(Rect, Point)
Union(Rect) Union(Rect, Rect)

필드

Height

사각형의 높이(픽셀)입니다.

Width

사각형의 너비(픽셀)입니다.

X

사각형의 왼쪽 위 모퉁이의 x좌표입니다.

Y

사각형의 왼쪽 위 모퉁이의 y좌표입니다.

적용 대상

추가 정보