대화상자를 부모의 정 중앙에 위치시키는 메소드입니다.
- 윈도우API 정복(개정판) 2060 페이지에서 가져왔습니다.
void MoveToParentCenter( HWND hWnd )
{
RECT sttParentRect, sttClientRect;
HWND hParent;
hParent = ::GetParent( hWnd );
if( hParent == NULL ) return;
if( ::IsIconic( hWnd ) )
{
::ShowWindow( hParent, SW_RESTORE );
}
::GetWindowRect( hParent, &sttParentRect );
::GetWindowRect( hWnd, &sttClientRect );
::SetWindowPos( hWnd, NULL
, sttParentRect.left + ( sttParentRect.right - sttParentRect.left ) / 2 - ( sttClientRect.right - sttClientRect.left ) / 2
, sttParentRect.top + ( sttParentRect.bottom - sttParentRect.top ) / 2 - ( sttClientRect.bottom - sttClientRect.top ) / 2
, 0
, 0
, SWP_NOSIZE | SWP_NOZORDER );
}
'C & C++ > MFC 컨트롤' 카테고리의 다른 글
[Dialog / 팝업 메뉴] 팝업 메뉴 밖을 클릭하면 팝업 메뉴가 닫히게 하는 방법 (0) | 2011.12.14 |
---|---|
[Dialog] 윈도우 작업영역 크기 설정 (0) | 2011.12.14 |
[Dialog] 자식 윈도우 일괄 재배치하는 방법 (0) | 2011.12.14 |
[Dialog / 메뉴] 대화상자에서 메뉴 on/off 시키기 (0) | 2011.12.14 |
[Dialog] 윈도우 그리기 lock 하기 (0) | 2011.12.14 |
댓글