如何手工添加一个消息映射函数
编号:QA004247
建立日期: 2001年6月7日 最后修改日期:2001年6月7日
所属类别:
nullbert:
操作系统: win95
编程工具: vc6.0
问题: 我想手工添加一个消息映射函数,我在头文件.h中添加afx_msg void OnNc(WPARAM wParam,LPARAM lParam);在实现文件.cpp中添加ON_MESSAGE(WM_NC,OnNc) 然后双击ClassView中的OnNc()函数,出现提示cannot find the definicitin of this function.
也有的书上说应在视类源代码文件中注册新的消息
const UINT WM_NC=RegisterWindowMessage("MYMESSAGE");
不知何故。请各位高手告诉我。
回答:
如果你的消息是系统预定义的,你可以在ON_MESSAGE中手工添加,但如果是自定义的消息,除了,要想书上说的注册消息,这样可以保证自定义消息和其他程序不冲突,而且还需要在消息映射中以ON_REGISTERED_MESSAGE宏的形式定义。如:
const UINT WM_NC=RegisterWindowMessage("MYMESSAGE");
...
ON_REGISTERED_MESSAGE(WM_NC, OnNc)
...
LRESULT CMyDialog::OnNc(WPARAM wParam, LPARAM lParam)
{
}
此问题由李海回答。
| |
|
|
| |
|
|