WNDCLASSW 구조체(winuser.h)
RegisterClass 함수에 의해 등록된 창 클래스 특성을 포함합니다.
이 구조체는 RegisterClassEx 함수와 함께 사용되는 WNDCLASSEX 구조체로 대체되었습니다. 창 클래스와 연결된 작은 아이콘을 설정할 필요가 없는 경우에도 WNDCLASS 및 RegisterClass 를 사용할 수 있습니다.
구문
typedef struct tagWNDCLASSW {
UINT style;
WNDPROC lpfnWndProc;
int cbClsExtra;
int cbWndExtra;
HINSTANCE hInstance;
HICON hIcon;
HCURSOR hCursor;
HBRUSH hbrBackground;
LPCWSTR lpszMenuName;
LPCWSTR lpszClassName;
} WNDCLASSW, *PWNDCLASSW, *NPWNDCLASSW, *LPWNDCLASSW;
멤버
style
형식: UINT
클래스 스타일입니다. 이 멤버는 클래스 스타일의 조합일 수 있습니다.
lpfnWndProc
형식: WNDPROC
창 프로시저에 대한 포인터입니다. CallWindowProc 함수를 사용하여 창 프로시저를 호출해야 합니다. 자세한 내용은 WindowProc을 참조하세요.
cbClsExtra
형식: int
창 클래스 구조 다음에 할당할 추가 바이트 수입니다. 시스템은 바이트를 0으로 초기화합니다.
cbWndExtra
형식: int
창 instance 다음에 할당할 추가 바이트 수입니다. 시스템은 바이트를 0으로 초기화합니다. 애플리케이션이 WNDCLASS 를 사용하여 리소스 파일에서 CLASS 지시문을 사용하여 만든 대화 상자를 등록하는 경우 이 멤버를 DLGWINDOWEXTRA로 설정해야 합니다.
hInstance
형식: HINSTANCE
클래스의 창 프로시저가 포함된 instance 대한 핸들입니다.
hIcon
형식: HICON
클래스 아이콘에 대한 핸들입니다. 이 멤버는 아이콘 리소스에 대한 핸들이어야 합니다. 이 멤버가 NULL인 경우 시스템은 기본 아이콘을 제공합니다.
hCursor
형식: HCURSOR
클래스 커서에 대한 핸들입니다. 이 멤버는 커서 리소스에 대한 핸들이어야 합니다. 이 멤버가 NULL인 경우 마우스가 애플리케이션 창으로 이동할 때마다 애플리케이션에서 커서 모양을 명시적으로 설정해야 합니다.
hbrBackground
형식: HBRUSH
클래스 배경 브러시에 대한 핸들입니다. 이 멤버는 배경을 그리는 데 사용할 실제 브러시에 대한 핸들이거나 색 값일 수 있습니다. 색 값은 다음 표준 시스템 색 중 하나여야 합니다(값 1을 선택한 색에 추가해야 합니다). 색 값이 지정된 경우 다음 HBRUSH 형식 중 하나로 변환해야 합니다.
- COLOR_ACTIVEBORDER
- COLOR_ACTIVECAPTION
- COLOR_APPWORKSPACE
- COLOR_BACKGROUND
- COLOR_BTNFACE
- COLOR_BTNSHADOW
- COLOR_BTNTEXT
- COLOR_CAPTIONTEXT
- COLOR_GRAYTEXT
- COLOR_HIGHLIGHT
- COLOR_HIGHLIGHTTEXT
- COLOR_INACTIVEBORDER
- COLOR_INACTIVECAPTION
- COLOR_MENU
- COLOR_MENUTEXT
- COLOR_SCROLLBAR
- COLOR_WINDOW
- COLOR_WINDOWFRAME
- COLOR_WINDOWTEXT
이 멤버가 NULL인 경우 애플리케이션은 클라이언트 영역에 페인트를 요청할 때마다 자체 배경을 그려야 합니다. 배경을 그려야 하는지 여부를 확인하기 위해 애플리케이션은 WM_ERASEBKGND 메시지를 처리하거나 BeginPaint 함수로 채워진 PAINTSTRUCT 구조체의 fErase 멤버를 테스트할 수 있습니다.
lpszMenuName
형식: LPCTSTR
리소스 파일에 이름이 표시되면 클래스 메뉴의 리소스 이름입니다. 정수 를 사용하여 메뉴를 식별하는 경우 MAKEINTRESOURCE 매크로를 사용합니다. 이 멤버가 NULL인 경우 이 클래스에 속하는 창에는 기본 메뉴가 없습니다.
lpszClassName
형식: LPCTSTR
null로 끝나는 문자열에 대한 포인터이거나 원자입니다. 이 매개 변수가 원자인 경우 RegisterClass 또는 RegisterClassEx 함수에 대한 이전 호출에서 만든 클래스 원자여야 합니다. 원자는 lpszClassName의 하위 단어에 있어야 합니다. 상위 단어는 0이어야 합니다.
lpszClassName이 문자열인 경우 창 클래스 이름을 지정합니다. 클래스 이름은 RegisterClass 또는 RegisterClassEx에 등록된 이름 또는 미리 정의된 컨트롤 클래스 이름일 수 있습니다.
lpszClassName의 최대 길이는 256입니다. lpszClassName이 최대 길이보다 크면 RegisterClass 함수가 실패합니다.
설명
참고
winuser.h 헤더는 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 WNDCLASS를 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
머리글 | winuser.h(Windows.h 포함) |
추가 정보
개념
기타 리소스
참조