永发信息网

在C++ WIN32中 如何运行ON_MESSAGE的功能

答案:3  悬赏:50  手机版
解决时间 2021-01-22 23:00
在C++ WIN32中 如何运行ON_MESSAGE的功能
最佳答案
ON_MESSAGE是MFC里面的一个自定义消息映射宏,它的作用是绑定一个自定义的消息和该消息的响应函数。
函数原型:
ON_MESSAGE(message, memberFxn ) 参数:
message:消息的ID。
memberFxn :映射message的消息函数,该函数的类型必须是以下类型的
afx_msg LRESULT (CWnd::*)(WPARAM, LPARAM)。
举例说明:
//.h

#define WM_MYMESSAGE (WM_USER + 100)

//.cpp

BEGIN_MESSAGE_MAP(CMyWnd2, CWnd)
ON_MESSAGE(WM_MYMESSAGE, OnMyMessage)
END_MESSAGE_MAP()

LRESULT CMyWnd2::OnMyMessage(WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(wParam);
UNREFERENCED_PARAMETER(lParam);
// Handle message here.
return 0;
}
全部回答

1、ON_MESSAGE是MFC中定义的用于将自定义消息和消息处理函数关联起来的宏。如:
#define WM_MYMESSAGE (WM_USER + 1)
BEGIN_MESSAGE_MAP( CMyWnd, CMyParentWndClass )
    ON_MESSAGE( WM_MYMESSAGE, OnMyMessage )
END_MESSAGE_MAP( )
2、例程:LRESULT CALLBACK WindowProc(
  HWND hwnd,      // handle to window
  UINT uMsg,      // message identifier
  WPARAM wParam,  // first message parameter
  LPARAM lParam   // second message parameter
)
{
    swtich(uMsg)
    {
        case MM_WIM_DATA:
            OnMmWimData(wParam,lParam);
            return ERROR_SUCCESS;
        default:
            return DefWindowProc(hwnd,uMsg,wParam,lParam);
    }
}

那就在对应窗口的窗口函数里面写啊:LRESULT CALLBACK WindowProc(
  HWND hwnd,      // handle to window
  UINT uMsg,      // message identifier
  WPARAM wParam,  // first message parameter
  LPARAM lParam   // second message parameter
)
{
    swtich(uMsg)
    {
        case MM_WIM_DATA:
            OnMmWimData(wParam,lParam);
            return ERROR_SUCCESS;
        default:
            return DefWindowProc(hwnd,uMsg,wParam,lParam);
    }
}追问老大,switch都写错了,认真点总行吧
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
小燕美甲地址好找么,我有些事要过去,
精英武道馆(六安精英跆拳道总馆)地址有知道的
吉林大学酒店管理专业好吗
单选题中日友谊源远流长,唐朝时日本受中图文
由如图所示的地板砖各两块所铺成的下列4个图
怎么才知道自己的肾不好啊?
你们班有个靠谱的数学老师吗
小雪美甲地址有知道的么?有点事想过去!
仓鼠吃的东西卡在脖子那里,也不爱运动了,会
从长清大学城到济南长途汽车站应该坐几路车
评职称需要什么材料,流程?
如何加强社会公德建设作文
歌词男儿是太阳男儿是月亮是什么歌
松涛跆拳道舞蹈培训中心地址在哪,我要去那里
流鼻血但是用纸塞住鼻子血就从眼睛里流出来怎
推荐资讯
慈边村地址在什么地方,我要处理点事!
牛津纺是什么面料 面料知识必须懂
如果两个数不相等,在下列四种情况中,绝对值
单选题Hisparentsare________ofEnglish.
20道初一列方程解应用题及答案(一元一次方程
2015款比亚迪秦plus怎么样
为什么自己算的当月应交增值税和下月国税扣的
恨的多 爱的少是什么歌
旭东化妆学校地址好找么,我有些事要过去,
短期大数据培训有哪些注意事项?
胎生,蛋生,哺乳动物,还有什么动物?
公安反光马甲颜色的意义是什么?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?