[사용자 윈도우 생성]
class CMyWnd: public CWnd
{
DECLARE_MESSAGE_MAP()
afx_msg void OnMouseMove(UINT nFlag, CPoint pt);
}
BEGIN_MESSAGE_MAP(CMyWnd, CWnd)
ON_WM_MOUSEMOVE()
END_MESSAGE_MAP()
void CMyWnd::OnMouseMove(UINT nFlag, CPoint pt)
{
CWnd::OnMouseMove(nFlag, pt);
}
[윈도우 클래스 등록]
CString strClass;
strClass = AfxRegisterWndClass(
CS_VREDRAW | CS_HREDRAW,
::LoadCursor(NULL, IDC_ARROW),
(HBRUSH) ::GetStockObject(BLACK_BRUSH),
::LoadIcon(NULL, IDI_APPLICATION));
[윈도우생성 - 자식윈도우 스타일]
CMyWnd* pWnd = new CMyWnd();
pWnd->Create(
0, /* strClass */
L"My Window - Child",
WS_CHILD | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_VISIBLE,
CRect(300, 0, 600, 400),
this,
888, // 아이디
0);
* 자동으로 WS_CHILD 적용되어 버림
[윈도우생성 - 팝업윈도우 스타일]
pWnd->CreateEx(
0, // WS_EX_CLIENTEDGE, WS_EX_TOPMOST,
strClass, // 사용자 등록 클래스가 반드시 존재해야 한다.
L"My Window - Popup",
WS_VISIBLE | WS_CAPTION | WS_SYSMENU | WS_BORDER | WS_THICKFRAME,
CRect(100,100,600,400),
this, // NULL로 해도 된다. 대신 명시적으로 파괴해주어야 한다.
0 // 1이상의 값으로 하면 프로그램 죽는다.!!!
);
좋은정보 감사드립니다. 감사합니다.
답글삭제