Хочу поменять имя класса окна в SDI приложении.
(Сейчас он представляет собой нечто типа Afx:400000:8:10011:0:360297)
Как это сделать правильно?
Здравствуйте Ruslan Bondarev, Вы писали:
RB>Хочу поменять имя класса окна в SDI приложении.
RB>(Сейчас он представляет собой нечто типа Afx:400000:8:10011:0:360297)
RB>Как это сделать правильно?
static const TCHAR s_szClassName[] = _T("MyCoolClassName");
BOOL CMainFrame::PreCreateWindow(
IN OUT CREATESTRUCT& cs
)
{
if (!CFrameWnd::PreCreateWindow(cs) )
return FALSE;
cs.lpszClass = s_szClassName;
WNDCLASSEX wcex;
HINSTANCE hInstance = AfxGetInstanceHandle();
if (!GetClassInfoEx(hInstance, s_szClassName, &wcex))
{
memset(&wcex, 0, sizeof(wcex));
wcex.cbSize = sizeof(wcex);
wcex.hInstance = hInstance;
wcex.lpfnWndProc = AfxWndProc;
wcex.lpszClassName = s_szClassName;
// настраиваем класс окна по вкусу
wcex.style = CS_DBLCLKS;
wcex.hbrBackground = (HBRUSH)(COLOR_3DFACE + 1);
wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
wcex.hIcon = (HICON)LoadImage(hInstance, MAKEINTRESOURCE(IDR_MAINFRAME),
IMAGE_ICON, 32, 32, 0);
wcex.hIconSm = (HICON)LoadImage(hInstance, MAKEINTRESOURCE(IDR_MAINFRAME),
IMAGE_ICON, 16, 16, 0);
return RegisterClassEx(&wcex);
}
return TRUE;
}