IPB
ЛогинПароль:

> Внимание!

1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным. В описании темы указываем язык!!!

> C++ создание класса дочернего окна
guf
сообщение 29.07.2008 20:46
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 28
Пол: Мужской

Репутация: -  0  +


Создаю обычный win32 project. Нужно использовать RegisterClass либо RegisterClassEx. Подскажите как сделать новый класс окна.


--------------------
Плагины для FL Studio и Pro Tools
Учусь на ошибках компилятора...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
volvo
сообщение 30.07.2008 0:30
Сообщение #2


Гость






Ну, так сделай что-то вроде:

LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message) {
case WM_COMMAND: // получили команду от пользователя
switch(wParam) {
case IDM_CREATECHILD: // на создание дочернего окна

// переменная hChildWnd описана глобально, как и hwnd - хендл главного окна приложения
hChildWnd = CreateWindowEx (0, szWindowClass,
"Child Window", // заголовок дочернего окна
WS_CHILD|WS_CAPTION|WS_SYSMENU|WS_THICKFRAME|WS_VISIBLE, // его стиль
200, 200, 200, 200, // и размеры
hwnd, NULL, ::GetModuleHandle(NULL),
NULL
);

if(!hChildWnd) MessageBox(0, 0, 0, 0); // сигнализируем об ошибке
else ShowWindow(hChildWnd, SW_SHOWNORMAL);
break;

default:
return DefWindowProc (hwnd, message, wParam, lParam);
}
break;

case WM_DESTROY:
PostQuitMessage (0);
break;

default:
return DefWindowProc (hwnd, message, wParam, lParam);
}

return 0;
}



Добавлено через 3 мин.
P.S. Ах, да... Забыл... CSecondWindow вызывается там же, где регистрируется класс основного окна... Ибо просто регистрация класса ни к чему не обязывает - создавать окно этого класса можно потом, когда в этом возникнет необходимость.
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 25.07.2025 16:35
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"