윈도우를 생성하려면 WNDCLASS 클래스를 생성해서 시스템에 등록을 해야 한다. 이때 쓰는 함수가 RegisterClass() 이다.
OS에는 WNDCLASS만 관리하는 구조체가 있다. RegisterClass()를 하게 되면 WNDCLASS 의 모든 내용이 윈도우 클래스를 관리하는 구조체로 복사하게 된고. 이때 WNDCLASS클래스의 내용을 모두 보관하고 추가로 내용을 더 보관하고 싶으면 WNDCLASS 의 cbClsExtra값을 지정 해주면 된다. 그러면 지정한 만큼의 메모리가 추가가 된다.
이때 기존의 메모리와 여분의 메모리에 접근하는 함수가 바로 SetClassLong() 이다.
ex)
static HBRUSH Brush;
SetClassLong(hWnd, GCL_HBRBACKGROUND, (LONG)Brush);
'Programming > Win32 API' 카테고리의 다른 글
| 윈도우열거 (0) | 2010.07.07 |
|---|---|
| 윈도우 스타일 변경 (0) | 2010.07.07 |
| RegisterClass()와 RegisterClassEx() (0) | 2010.07.07 |
| SetWindowLong() (0) | 2010.07.07 |
| API 기본 윈도우 생성 (0) | 2010.07.07 |