MFC学习点滴二:MFC中的菜单路由
来源:互联网 发布:数控折弯机如何编程 编辑:程序博客网 时间:2024/04/19 14:44
所谓路由即是点击菜单某一项时,程序响应的顺序。
1 一般情况下。最先捕捉到菜单点击消息的是Frame类,(在Frame类中可以直接使用GetMenu() ,
而在View类中,要使用GetParent()->GetMenu()来获取系统菜单的指针。)但Frame类并不作出相应,
它会交给View类来处理,如果View类中有相应处理函数,则处理,路由结束。
否则View类会把消息交给Doc文档类来处理,如果文档类有相应的处理,则结束。
否则文档类会重新递交给View类,View类再交给Frame类,这时如果Frame类中有相应处理,则结束
否则会接着给到程序类App类中,如果App类中还没有处理,则交给操作系统。
2 也可以截断这种默认的路由,直接由Frame类来截获消息并执行。由于Frame类中的OnCommand是个
虚函数,如果我们重写它,并不再调用基类的OnCommand,那么路由只是在Frame中这里就结束了。
BOOL CMainFrame::OnCommand(WPARAM wParam , LPARAM lParam)
...{
//我们可以设置一个int来接受wParam,以此判断相应的是哪一个ID项
int nID = LOWORD(wParam);
//如果nID是我们菜单的ID值,比如 nID == ID_FILE_NEW 那么做出相应的处理
if(nID == ID_FILE_NEW)
...{
// Do something
}
//当然也可以用switch来进行多项选择
}
...{
//我们可以设置一个int来接受wParam,以此判断相应的是哪一个ID项
int nID = LOWORD(wParam);
//如果nID是我们菜单的ID值,比如 nID == ID_FILE_NEW 那么做出相应的处理
if(nID == ID_FILE_NEW)
...{
// Do something
}
//当然也可以用switch来进行多项选择
}
- MFC学习点滴二:MFC中的菜单路由
- MFC学习点滴一
- MFC学习点滴
- MFC中的消息路由
- MFC中的菜单处理
- MFC中的菜单操作
- MFC中的菜单操作
- MFC中的菜单
- MFC学习:菜单
- mfc-菜单-学习笔记
- 【MFC学习】菜单资源
- [罗振辉]MFC中菜单命令路由方式
- MFC中的C++(二)
- MFC 学习点滴2010年-11月
- MFC学习点滴四:MFC程序的诞生与死亡
- 学习MFC(二)
- MFC学习笔记二
- MFC学习笔记(二)
- 理解Asp.net中的View state
- 仅对8位,24位图像进行灰度处理
- 数据结构(线性表)
- 很旧以前都申请了这个 BOLG但是一直懒得写东西 看到周围的朋友都有BOLG了 从今天开始我会逐渐往里面添加文章的 请朋友们支持我
- 文明3_PTW玩转世界_C3C征服_[新手终极指南]
- MFC学习点滴二:MFC中的菜单路由
- ArcIMS基本语法
- 什么是托管
- IIS访问ASP页面时报错The requested resource is in use.的解决方法
- eXtremeComponents 的最后一页
- SQL Server应用程序中的高级SQL注入
- DBF表与SQL Server表的导入、导出
- 今天开始为妞妞写日志,也开始整理工作上的心得!
- 在vs.net 2003中编译ns2(6):编译nam