欢迎来到天天文库
浏览记录
ID:40471116
大小:385.83 KB
页数:54页
时间:2019-08-03
《菜单快捷键和控制条》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章菜单、快捷键和控制条内容摘要:菜单快捷菜单动态生成菜单工具条状态条返回目录4.1菜单学习目标1.响应菜单消息控制菜单状态使用快捷键4.1返回第4章程序的实现步骤利用AppWizard生成程序框架(MenuTest)编辑资源加入菜单消息处理函数菜单命令的更新控制4.1步骤1生成程序框架(MenuTest)项目名称:MenuTest选择单文档界面应用程序(Singledocument)4.1步骤2编辑资源1.编辑菜单资源画图Pop-up选中CaptionIDPrompt矩形(&R)tCtrl+RID_DRAW_RECT在视中画矩形椭圆(&C)tAlt+CID_DRAW_CIRCL
2、E在视中画椭圆2.编辑快捷键资源IDModifiersKeyID_DRAW_RECTCtrlRID_DRAW_CIRCLAltC4.1步骤3加入菜单消息处理函数ClassNameObjectsIDsMessagesCMenuTestViewID_DRAW_RECTCOMMANDCMenuTestViewID_DRAW_CIRCLECOMMAND4.1voidCMenuTestView::OnDrawRect(){CClientDCdc(this);dc.Rectangle(50,50,200,150);}voidCMenuTestView::OnDrawCircle(){CClient
3、DCdc(this);dc.Ellipse(250,50,400,150);}步骤4菜单命令的更新控制1.在画图菜单中再添加两个菜单项CaptionIDPrompt允许画矩形ID_DRAW_ENABLE--------禁止画矩形ID_DRAW_DISABLE--------在视类中添加一个记录当前“矩形”菜单项状态的变量BOOLm_Enable;3.在构造函数中初始化数据成员m_Enablem_Enable=TRUE;4.1步骤4菜单命令的更新控制4.添加菜单响应函数ClassNameObjectsIDsMessagesCMenuTestViewID_DRAW_ENABLECOMMAN
4、DCMenuTestViewID_DRAW_DISABLECOMMANDCMenuTestViewID_DRAW_RECTUPDATE_COMMAND_UICMenuTestViewID_DRAW_ENABLEUPDATE_COMMAND_UICMenuTestViewID_DRAW_DISABLEUPDATE_COMMAND_UI4.1voidCMenuTestView::OnUpdateDrawRect(CCmdUI*pCmdUI){pCmdUI->Enable(m_Enable);}步骤4菜单命令的更新控制4.1voidCMenuTestView::OnDrawDisable()
5、{m_Enable=FALSE;}voidCMenuTestView::OnDrawEnable(){m_Enable=TRUE;}voidCMenuTestView::OnUpdateDrawEnable(CCmdUI*pCmdUI){pCmdUI->SetCheck(m_Enable?1:0);}voidCMenuTestView::OnUpdateDrawDisable(CCmdUI*pCmdUI){pCmdUI->SetCheck(m_Enable?0:1);}基本知识pCmdUI->Enable(true
6、false);pCmdUI->SetCheck(1
7、0);使用COMM
8、AND消息响应菜单项的选择事件UPDATE_COMMAND_UI消息控制菜使用单项状态4.14.2快捷菜单学习目标1.实现快捷菜单4.2返回第4章程序的实现步骤编辑快捷菜单资源显示跟踪菜单添加菜单响应函数实现对话框功能4.2步骤1编辑快捷菜单资源添加菜单(IDR_POPUP_MENU)Popup1选中Pop-upCaptionID编辑矩形坐标ID_EDIT_RECT编辑椭圆坐标ID_EDIT_CIRCLE4.2步骤2显示快捷菜单添加响应函数ClassNameObjectsIDsMessagesCMainFrameCMainFrameWM_CONTEXTMENU4.2voidCMainF
9、rame::OnContextMenu(CWnd*pWnd,CPointpoint){//TODO:AddyourmessagehandlercodehereCMenumenu;if(menu.LoadMenu(IDR_POPUP_MENU)){CMenu*pPopup=menu.GetSubMenu(0);pPopup->TrackPopupMenu(TPM_LEFTALIGN
10、TPM_RIGHTBUTTON,point.x,point.y,
此文档下载收益归作者所有