热情软件屋

 

如何手工添加一个消息映射函数


编号: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)
     {
     }

此问题由李海回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio