Programing/DirectX

WNDCLASSEX 구조체

챠니쓰 2008. 1. 25. 00:52


typedef struct

{
                    UINT cbSize;
                    UINT style;
                    WNDPROC lpfnWndProc;
                    int cbClsExtra;
                    int cbWndExtra;
                    HINSTANCE hInstance;
                    HICON hIcon;
                    HCURSOR hCursor;
                    HBRUSH hbrBackground;
                    LPCTSTR lpszMenuName;
                    LPCTSTR lpszClassName;
                    HICON hIconSm;
} WNDCLASSEX, *PWNDCLASSEX;

WNDCLASSEX 구조체의 정의는 위와 같다.

* cbSize

구조체의 크기를 지정한다.

* style

윈도우 스타일을 지정한다.

* lpfnWndProc

메세지를 처리할 콜백 함수를 지정한다.

* cbClsExtra

추가 클래스를 지정한다

* cbWndExtra

추가 윈도우를 지정한다

* hInstance

인스턴스 핸들을 지정한다

* hIcon

실행파일에 쓰일 아이콘을 지정한다

HICON LoadIcon

(
                    HINSTANCE hInstance,
                    LPCTSTR lpIconName
);

IDI_APPLICATION : 기본적인 프로그램 아이콘

IDI_ASTERISK : 알림 아이콘

IDI_EXCLAMATION : 느낌표 아이콘

IDI_HAND : 정지 아이콘

IDI_QUESTION : 물음표 아이콘

* hCursor

윈도우에 쓰일 커서를 지정한다

HCURSOR LoadCursor

(
                    HINSTANCE hInstance,

                    LPCTSTR lpCursorName
);


IDC_APPSTARTING : 기본적인 모양의 화살표와 모래시계

IDC_ARROW : 기본적인 모양의 화살표

IDC_CROSS : 십자 모양

IDC_HAND : 손모양

IDC_HELP : 기본적인 모양의 화살표와 물음표 모양

IDC_ICON : (쓰이지 않음)

IDC_NO : 빗금쳐진 원모양

IDC_SIZE : (쓰이지 않음)

IDC_SIZEALL : 크기조절 모양(네방향)

IDC_SIZENESW : 크기조절 모양(상우, 하좌)

IDC_SIZENS : 크기조절 모양(상, 하)

IDC_SIZENWSE : 크기조절 모양(상좌, 하우)

IDC_SIZEWE : 크기조절 모양(좌, 우)

IDC_UPARROW : 똑바로 선 화살표

IDC_WAIT : 모래시계

* hbrBackground

윈도우 배경 화면을 지정한다

* lpszMenuName

메뉴를 지정한다

* lpszClassName

클래스를 지정한다

* hIconSm

윈도우 캡션에 쓰일 아이콘을 지정한다

---------------------------------------------------------------------------------------
// 윈도우 클래스 등록
    WNDCLASSEX wc = { sizeof(WNDCLASSEX), CS_CLASSDC, MsgProc, 0L, 0L,
                      GetModuleHandle(NULL), NULL, NULL, NULL, NULL,
                      "D3D Tutorial", NULL };
    RegisterClassEx( &wc );