powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Обработка оконных сообщений
4 сообщений из 4, страница 1 из 1
Обработка оконных сообщений
    #33172675
m1rag3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток!
Помогите плз решить мою траблу...
Создаю класс, в нем объявляю функции в том числе и оконную функцию.При попытке присвоить свойству lpfnWndProc в структуре WNDCLASS метод класса, соответствующий типу WNDPROC, получаю ошибку компилятора (MS VC 7)
"Cannot convert 'overloaded-function to WNDPROC'"

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
class MainWndClass
{
...
public:
WNDCLASS wc;
...
bool InitWindow();
LRESULT CALLBACK MainWndProc(...);
};

...

bool MainWndClass::InitWindow
{
...
wc.lpfnWndProc = (WNDPROC)MainWndProc;
...
return true;
}

Помогите плз очень надо!!!
...
Рейтинг: 0 / 0
Обработка оконных сообщений
    #33172702
Станислав C.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если я ничего не путаю, то функция MainWndProc должна быть внешней...
Попробуй вынести ее за "рамки" класса...
...
Рейтинг: 0 / 0
Обработка оконных сообщений
    #33172736
SeraTJ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Либо ты должен объявить эту функцию как static-член:

static LRESULT CALLBACK MainWndProc(...);
...
Рейтинг: 0 / 0
Обработка оконных сообщений
    #33172793
SeraTJ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дело в том, что функция WndProc должна иметь определенный набор параметров (сам знаешь какой), а функция-член класса на самом деле всегда преобразуется в такую:

void CClass::Function( CClass* this, ... );

Поэтому-то функция WndProc должна быть за пределами класса, либо должна быть статической.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Обработка оконных сообщений
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]