다음을 통해 공유


CalculatePopupWindowPosition 함수(winuser.h)

지정된 앵커 지점, 팝업 창 크기, 플래그 및 선택적 제외 사각형을 사용하여 적절한 팝업 창 위치를 계산합니다. 지정된 팝업 창 크기가 바탕 화면 창 크기보다 작은 경우 CalculatePopupWindowPosition 함수를 사용하여 지정된 앵커 지점에 관계없이 팝업 창이 바탕 화면 창에 완전히 표시되도록 합니다.

구문

BOOL CalculatePopupWindowPosition(
  [in]           const POINT *anchorPoint,
  [in]           const SIZE  *windowSize,
  [in]           UINT        flags,
  [in, optional] RECT        *excludeRect,
  [out]          RECT        *popupWindowPosition
);

매개 변수

[in] anchorPoint

형식: const POINT*

지정된 앵커 지점입니다.

[in] windowSize

형식: const SIZE*

지정된 창 크기입니다.

[in] flags

형식: UINT

다음 플래그 중 하나를 사용하여 함수가 팝업 창을 가로 및 세로로 배치하는 방법을 지정합니다. 플래그는 TrackPopupMenuEx 함수의 세로 및 가로 위치 지정 플래그와 동일합니다.

다음 플래그 중 하나를 사용하여 함수가 팝업 창을 가로로 배치하는 방법을 지정합니다.

의미
TPM_CENTERALIGN
0x0004L
anchorPoint-x> 매개 변수로 지정된 좌표를 기준으로 팝업 창을 가로로 가운데에 맞춥다.
TPM_LEFTALIGN
0x0000L
왼쪽 가장자리가 anchorPoint-x> 매개 변수로 지정된 좌표와 정렬되도록 팝업 창을 배치합니다.
TPM_RIGHTALIGN
0x0008L
오른쪽 가장자리가 anchorPoint-x> 매개 변수로 지정된 좌표와 정렬되도록 팝업 창을 배치합니다.
 

다음 플래그 중 하나를 사용하여 함수가 팝업 창을 세로로 배치하는 방법을 지정합니다.

의미
TPM_BOTTOMALIGN
0x0020L
아래쪽 가장자리가 anchorPoint-y> 매개 변수로 지정된 좌표와 정렬되도록 팝업 창을 배치합니다.
TPM_TOPALIGN
0x0000L
위쪽 가장자리가 anchorPoint-y> 매개 변수로 지정된 좌표와 정렬되도록 팝업 창을 배치합니다.
TPM_VCENTERALIGN
0x0010L
anchorPoint-y 매개 변수에 지정된 좌표를 기준으로 팝업 창을 세로로> 가운데에 옵니다.
 

다음 플래그 중 하나를 사용하여 가로 맞춤 또는 세로 맞춤을 수용할지 여부를 지정합니다.

의미
TPM_HORIZONTAL
0x0000L
제외된 사각형과 겹치지 않고 지정된 위치에 팝업 창을 표시할 수 없는 경우 시스템은 요청된 세로 맞춤 전에 요청된 가로 맞춤을 수용하려고 합니다.
TPM_VERTICAL
0x0040L
제외된 사각형을 겹치지 않고 지정된 위치에 팝업 창을 표시할 수 없는 경우 시스템은 요청된 가로 맞춤 앞에 요청된 세로 맞춤을 수용하려고 시도합니다.
 

다음 플래그는 Windows 7부터 사용할 수 있습니다.

의미
TPM_WORKAREA
0x10000L
팝업 창을 작업 영역 내로 제한합니다. 이 플래그가 설정되지 않은 경우 입력 지점이 작업 영역 내에 있는 경우에만 팝업 창이 작업 영역으로 제한됩니다. 자세한 내용은 MONITORINFO 구조체의 rcWorkrcMonitor 멤버를 참조하세요.

[in, optional] excludeRect

형식: RECT*

제외 사각형을 지정하는 구조체에 대한 포인터입니다. NULL일 수 있습니다.

[out] popupWindowPosition

형식: RECT*

팝업 창 위치를 지정하는 구조체에 대한 포인터입니다.

반환 값

형식: BOOL

함수가 성공하면 TRUE를 반환합니다. 그렇지 않으면 FALSE를 반환 합니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

TPM_WORKAREATrackPopupMenuTrackPopupMenuEx 함수에 대해 지원됩니다.

요구 사항

   
지원되는 최소 클라이언트 Windows 7 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 winuser.h(Windows.h 포함)
라이브러리 User32.lib
DLL User32.dll

추가 정보

참조

TrackPopupMenu

TrackPopupMenuEx