[배움]/MFC

[DLG] - CWnd::SetWindowPos

도영수 2016. 11. 29. 10:24
1. CWnd::SetWindowPos

BOOL SetWindowPos( const CWnd* pWndInsertAfter, int x, int y, int cx, int cy, UINT nFlags );



UINT nFlags
  • SWP_DRAWFRAME 창 (창이 만들어질 때 정의 된) 프레임을 그립니다.

  • SWP_FRAMECHANGED 보냅니다는 WM_NCCALCSIZE 않습니다 창의 크기가 변경 되는 경우에 메시지를 창으로. 이 플래그를 지정 하지 않으면 WM_NCCALCSIZE 는 창의 크기가 변경 되 면 전송 됩니다.

  • SWP_HIDEWINDOW 창을 숨깁니다.

  • SWP_NOACTIVATE창을 활성화 하지 않습니다. 이 플래그를 설정 하지 않으면 창을 활성화 하 고 위쪽은 맨 위 또는 맨 위 그룹으로 이동 됩니다 (설정에 따라은 pWndInsertAfter 매개 변수).

  • SWP_NOCOPYBITS 클라이언트 영역의 전체 내용을 삭제 합니다. 이 플래그를 지정 하지 않으면 클라이언트 영역의 내용은 잘못 저장 하 고 창 크기 또는 위치를 변경 하면 클라이언트 영역으로 다시 복사 됩니다.

  • SWP_NOMOVE현재 위치를 유지 (무시 된 x 및 y 매개 변수).

  • SWP_NOOWNERZORDER z에서 소유자 창의 위치는 변경 되지 않습니다.

  • SWP_NOREDRAW 변경 내용을 다시 그려지지 않습니다. 이 플래그가 설정 되 면 다시 표시 하지 않습니다 모든 종류의 발생 합니다.비클라이언트 영역 (제목 및 스크롤 막대를 포함), 일부 발견의 결과로 이동된 된 창은 부모 창의 클라이언트 영역에 적용 됩니다. 이 플래그가 설정 되 면 응용 프로그램 해야 명시적으로 무효화 하거나 그려야 부모 창과 창 부분을 다시 그립니다.

  • SWP_NOREPOSITION 동일 SWP_NOOWNERZORDER.

  • SWP_NOSENDCHANGING 창에서 수신을 방지는 WM_WINDOWPOSCHANGING 메시지.

  • SWP_NOSIZE 현재 크기 유지 (cx 및 cy 매개 변수 무시).

  • SWP_NOZORDER 현재 순서 유지 (pWndInsertAfter 무시).

  • SWP_SHOWWINDOW 의 창에 표시 됩니다.


※ Log에서 중앙 최상단에 띄우고 싶다면 Dlg 의 속성을 popup으로 설정해주어야 한다.


2. 다이얼 로그 중앙에 위치 시키기

CenterWindow(CWnd::GetDesktopWindow());




'[배움] > MFC' 카테고리의 다른 글

[DLG] - GetDlgItem  (0) 2016.12.23
[DLG CONTROL] - [CHECK BOX]  (0) 2016.12.23
Tab Control  (0) 2016.11.25
Tab control 작성하는 방법 [펌]  (0) 2016.11.02
[VS2013] error MSB8031 - 멀티바이트문자집합 에러  (0) 2016.08.30