컨트롤 크기 및 위치, 표시Level를 변경할 때 사용하는 함수.
ex) GetDlgItem(IDC_EDIT1)->SetWindowPos(NULL,200,300,600,600,SWP_NOMOVE);
BOOL SetWindowPos(
const CWnd* pWndInsertAfter, // 핸들값 창이 변경되고서 표시 Level 지정
int x, // 컨트롤의 x 좌표
int y, // 컨트롤의 y 좌표
int cx, // 컨트롤의 가로 크기
int cy, // 컨트롤의 세로 크키
UINT nFlags // 표시할 option 지정
);
hWndInsertAfter
상수 | 값 | 설명 |
&wndNoTopMost | -2 | 최상위 Window의 바로 다음 위치로 이동 |
&wndTop | -1 | 바로 다음 상위로 이동 |
&wndBottom | 0 | 최상위로 이동 |
&wndTopMost | 1 | 최상위로 이동, Focus를 잃더라도 level 유지 |
공용인 nFlags엔 여러가지가 있지만 주로 쓰이는것
상수 | 값 | 설명 |
SWP_HIDEWINDOW | 128 | Window 숨김 |
SWP_NOACTIVATE | 10 | Window 비활성화 |
SWP_NOMOVE | 2 | x, y 인수를 무시하고 현재위치 고수 |
SWP_NOREDRAW | 8 | 다시 그리지 않음 |
SWP_NOSIZE | 1 | cx, cy 인수를 무시하고 현재크기 고수 |
[출처] SetWindowPos() 함수|작성자 레알