- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
08_菜单__mfc.ppt
菜单 参考书 《MFC Windows 程序设计》第4章 菜单基础 顶层菜单,下拉菜单 弹出式菜单(上下文菜单) 系统菜单 添加下拉菜单步骤 在资源中修改(添加)菜单,设置其ID 设置其快捷键 通过菜单名称名称某个字符前加‘’,以添加Alt型快捷键 通过在资源中Accelerator来添加快捷键 添加响应函数处理消息COMMAND与UPDATE_COMMAND_UI 菜单COMMAND消息负责调用菜单的命令 菜单UPDATE_COMMAND_UI消息负责更新菜单 CCmdUI项的方法 各种菜单选项 创建层叠菜单方法 创建分隔栏 代码示例 程序Shapes 弹出式菜单 建立菜单资源,设其ID为IDR_MENU1 添加消息WM_CONTEXTMENU(鼠标右击时响应)。 在响应函数中可加入如下代码 CMenu popmenu; popmenu.LoadMenu(IDR_MENU1); popmenu.GetSubMenu(0)-TrackPopupMenu(TPM_RIGHTBUTTON,point.x,point.y, AfxGetMainWnd ()); TrackPopupMenu BOOL TrackPopupMenu(UINT nFlags, int x, int y,CWnd* pWnd, LPCRECT lpRect = 0); x,y说明菜单显示的位置(屏幕坐标) nFlags:说明哪些键可以选中菜单中菜单项(TPM_LEFTBUTTON,TPM_RIGHTBUTTON)及菜单相对于x的位置(TPM_LEFTALIGN,TPM_CENTERALIGN,TPM_RIGHTALIGN) pWnd:确定哪个窗口能够接收菜单中各种操作所引发的消息 lpRect:确定一个矩形,在这个矩形中单击鼠标不会取消菜单,如果为NULL(默认),则在菜单外点击会取消菜单。 手工编程创建菜单 CMenu::CreateMenu:创建顶层菜单 CMenu::CreatePopMenu:创建弹出式菜单 CMenu::AppendMenu:在菜单尾部添加菜单项(或子菜单) CMenu::InsertMenu:在菜单给定位置插入一个菜单项 CMenu::ModifyMenu:改变菜单项的命令ID、正文或其他特性 CMenu::DeleteMenu:删除菜单项 GetMenu():获取顶层菜单的CMenu指针 CMenu::GetSubMenu():获得子菜单 代码示例1 在int CMainFrame::OnCreate()后加入下面代码: CMenu menuMain; menuMain.CreateMenu (); CMenu menuPopup; menuPopup.CreatePopupMenu (); menuPopup.AppendMenu (MF_STRING, ID_APP_EXIT, Exit); menuMain.AppendMenu (MF_POPUP, (UINT) menuPopup.Detach (), File); menuPopup.CreatePopupMenu (); menuPopup.AppendMenu (MF_STRING, ID_CIRCLE, Circle\tF7); menuPopup.AppendMenu (MF_STRING, ID_TRIANGLE, Triangle\tF8); menuPopup.AppendMenu (MF_STRING, ID_RECT, Square\tF9); menuMain.AppendMenu (MF_POPUP, (UINT) menuPopup.Detach (), Shape); SetMenu (menuMain); menuMain.Detach (); 代码示例2 CMenu* pMenu = GetMenu (); pMenu-DeleteMenu (1, MF_BYPOSITION); pMenu-DeleteMenu (ID_SHAPE_CIRCLE, MF_BYCOMMAND); ----------------------------------------------------------------------- pMenu-ModifyMenu (ID_SHAPE_TRIANGLE, MF_STRING | MF_BYCOMMAND, ID_SHAPE_TRIANGLE, Three-Sided Polygon); pMenu-ModifyMenu (2, MF_STRING | MF_BYPOSITION, ID_SHAPE_SQUARE, Four-Sided Poly
您可能关注的文档
- (H W T D )控制点.xls
- (修改)学习篇:《读书是一生的修行》.doc
- (六)第一次世界大战.doc
- (北京版)四年级语文上册课件 我爱家乡的柿子 2.ppt
- (北京版)四年级语文上册课件 我爱家乡的柿子.ppt
- (改)金大地A6样板房清单.xls
- (新建)牵引明细表.xls
- (歪解)各大船公司优势航线.doc
- (牵手圈).ppt
- (电牵方向).doc
- 2026年四川托普信息技术职业学院单招职业适应性测试必刷测试卷完美版.docx
- 2025年城市智慧交通诱导系统投资分析报告.docx
- 2025年影视行业五年流媒体竞争:内容创新与付费订阅报告.docx
- 陕西网上安全培训课件.pptx
- 2025年三上科学试卷真题及答案.doc
- 能源行业十年转型:2025年可再生能源与碳中和报告.docx
- 2025-2026学年小学信息技术(信息科技)五年级上册(2024)黔科版(2024)教学设计合集.docx
- 婴幼儿体格评价营养保健技术18课件讲解.pptx
- 2025-2026学年小学信息技术(信息科技)五年级上册(2024)清华大学版(2024)教学设计合集.docx
- 偏头疼护理中常见的误区解读.pptx
原创力文档


文档评论(0)