Проблема с User Event...
От: __INFINITE Россия  
Дата: 09.05.05 08:37
Оценка:
Захотелось мне как то использовать PostMessage(MYMSG) для кое каких нужд, ну и решил попробовать нацчиться слать пользовательские сообщения, для этого:

Обявляю глобальную переменную:
int MYMSG;
В CMyDlg объявляю:
afx_msg void onMYMSG();
Ну и реализация
void CMyDlg::onMYMSG()
{
MessageBox("Hello");
}
В Message Map добавляю
ON_REGISTERED_MESSAGE(MYMSG, onMYMSG)

И уже компилируя на этом этапе получаю: (Это и MS Visual Studio .NET 2003 и 6.0 говорят)
error C2440: 'static_cast' : cannot convert from 'void (__thiscall CMyDlg::* )(void)' to 'LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)'

А вроде следoвал указаниям... Помогите разобраться?
Re: Проблема с User Event...
От: _swf_  
Дата: 10.05.05 08:56
Оценка:
Чтоб компилятор не ругался нужно сделать так:


afx_msg LRESULT onMYMSG(WPARAM, LPARAM);

LRESULT CMyDlg::onMYMSG(WPARAM, LPARAM)
{
MessageBox("Hello");
return 0;
}
Re: Проблема с User Event...
От: Кирпа В.А. Украина  
Дата: 10.05.05 08:59
Оценка:
Здравствуйте, __INFINITE, Вы писали:

__I>Захотелось мне как то использовать PostMessage(MYMSG) для кое каких нужд, ну и решил попробовать нацчиться слать пользовательские сообщения, для этого:


__I>Обявляю глобальную переменную:

__I>int MYMSG;
__I>В CMyDlg объявляю:
__I>afx_msg void onMYMSG();
__I>Ну и реализация
__I>void CMyDlg::onMYMSG()
__I>{
__I>MessageBox("Hello");
__I>}
__I>В Message Map добавляю
__I>ON_REGISTERED_MESSAGE(MYMSG, onMYMSG)

__I>И уже компилируя на этом этапе получаю: (Это и MS Visual Studio .NET 2003 и 6.0 говорят)

__I>error C2440: 'static_cast' : cannot convert from 'void (__thiscall CMyDlg::* )(void)' to 'LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)'

__I>А вроде следoвал указаниям... Помогите разобраться?


По моему компилятор очень вразумительно тебе ответил


afx_msg LRESULT onMYMSG(WPARAM wParam, LPARAM lParam)
{
   MessageBox("Hello");
   return 0;
}
!0xDEAD
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.