다음을 통해 공유


MoveWindow 함수(winuser.h)

지정된 창의 위치와 크기를 변경합니다. 최상위 창의 경우 위치와 차원은 화면의 왼쪽 위 모서리를 기준으로 합니다. 자식 창의 경우 부모 창 클라이언트 영역의 왼쪽 위 모서리를 기준으로 합니다.

구문

BOOL MoveWindow(
  [in] HWND hWnd,
  [in] int  X,
  [in] int  Y,
  [in] int  nWidth,
  [in] int  nHeight,
  [in] BOOL bRepaint
);

매개 변수

[in] hWnd

형식: HWND

창에 대한 핸들입니다.

[in] X

형식: int

창 왼쪽의 새 위치입니다.

[in] Y

형식: int

창 위쪽의 새 위치입니다.

[in] nWidth

형식: int

창의 새 너비입니다.

[in] nHeight

형식: int

창의 새 높이입니다.

[in] bRepaint

형식: BOOL

창을 다시 칠할지 여부를 나타냅니다. 이 매개 변수가 TRUE이면 창에 메시지가 표시됩니다. 매개 변수가 FALSE이면 어떤 종류의 다시 그리기도 발생하지 않습니다. 이는 클라이언트 영역, 비클라이언트 영역(제목 표시줄 및 스크롤 막대 포함) 및 자식 창을 이동한 결과로 발견된 부모 창의 모든 부분에 적용됩니다.

반환 값

형식: BOOL

함수가 성공하면 반환 값이 0이 아닙니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

bRepaint 매개 변수가 TRUE이면 시스템은 창을 이동한 직후 창 프로시저로 WM_PAINT 메시지를 보냅니다(즉, MoveWindow 함수는 UpdateWindow 함수를 호출함). bRepaintFALSE인 경우 애플리케이션은 다시 그리기가 필요한 창 및 부모 창의 모든 부분을 명시적으로 무효화하거나 다시 그려야 합니다.

MoveWindow는 WM_WINDOWPOSCHANGING, WM_WINDOWPOSCHANGED, WM_MOVE, WM_SIZEWM_NCCALCSIZE 메시지를 창으로 보냅니다.

예제

예제는 자식 창 만들기, 열거 및 크기 조정을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 winuser.h(Windows.h 포함)
라이브러리 User32.lib
DLL User32.dll
API 세트 ext-ms-win-ntuser-window-l1-1-1(Windows 8.1 도입)

추가 정보

개념

기타 리소스

참조

SetWindowPos

UpdateWindow

WM_GETMINMAXINFO

WM_PAINT

Windows