VC++的菜单与工具栏使用方法总结ppt课件.ppt

VC++的菜单与工具栏使用方法总结ppt课件.ppt

ID:58878962

大小:169.50 KB

页数:60页

时间:2020-09-30

VC++的菜单与工具栏使用方法总结ppt课件.ppt_第1页
VC++的菜单与工具栏使用方法总结ppt课件.ppt_第2页
VC++的菜单与工具栏使用方法总结ppt课件.ppt_第3页
VC++的菜单与工具栏使用方法总结ppt课件.ppt_第4页
VC++的菜单与工具栏使用方法总结ppt课件.ppt_第5页
资源描述:

《VC++的菜单与工具栏使用方法总结ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、菜单菜单是重要的用户界面对象,用户通常从菜单栏中选择命令来使用应用程序。Windows98支持三种类型的菜单:(1)菜单栏(主菜单):菜单栏横放在窗口的顶部(2)弹出式子菜单:弹出式菜单是从主菜单下弹出的菜单(3)上下文菜单:通过鼠标右键弹出的自由浮动菜单1.菜单的机制与功能菜单可以用多种方法创建,一般存在在资源脚本中,在程序运行时才调入,就像其他资源一样。1.1菜单消息菜单被选中时发送消息给Windows,再由Windows传送给应用程序的消息映像。Win32API提供4个菜单消息,但在MFC消息映像中,只有两个菜单消息WM_COMMAND和ON_UPDATE_COMMAN

2、D_UI。MFC自动处理其他两个消息。(1)处理WM_COMMAND消息用户选中了菜单项会产生WM_COMMAND消息 MFC的框架窗口类要确保每一个菜单项都有WM_COMMAND消息的处理函数,对缺少处理函数的菜单项,MFC使其变灰。 消息映射ON_COMMAND项采用以下形式: ON_COMMAND(MenuID,ClassMethod) MenuID是菜单项的标识符,ClassMethod是处理菜单项WM_COMMAND消息定义的方法(命令处理函数)。(2)处理UPDATE_COMMAND_UI消息在许多情况下菜单项可能有多个状态。例如某一个时刻可用(正常),而某一个

3、时刻不可用(菜单变灰);菜单项可以加注标记,以表明被选中或未被选中。 UPDATE_COMMAND_UI是MFC所特有的,如果想根据应用程序的当前状态激活或者使菜单项无效,或者在程序运行的某一刻反映菜单项的可用性,就要由自己处理这条消息。此消息和Win32API的WM_INITPOPUPMENU消息相对应。 ON_UPDATE_COMMAND_UI项采用以下形式: ON_UPDATE_COMMAND_UI(MenuID,ClassMethod) MenuID是菜单项的标识符,ClassMethod是处理菜单UPDATE_COMMAND_UI消息定义的方法(更新处理函数)该消息

4、值适合弹出式菜单项的菜单项,而对于顶层菜单项则不适用。例如不能使用该消息来禁止“文件”菜单项。 如果菜单项有更新处理函数,那么它被调用进行更新;如果没有,那么框架检查命令处理函数是否存在,若不存在,则使菜单变灰。 必须提供一个菜单处理函数或更新函数。1.2基于菜单栏的程序设计1Menuitem程序为一个单文档的应用程序,程序启动后,单击“graph”菜单中的“rectangle”,则在当前的客户区中显示一个矩形;单击“graph”菜单中的“Ellipse”,则在当前的客户区中显示一个椭圆。(1)利用AppWizard,生成一个MFC的单文档工程“Menuitem”。(2)单

5、击“Workspace”窗口的“ResourceView”标签,找到“Menu”项,双击“ID_MAINFRAME”,对菜单资源进行编辑。 用右键单击菜单项最右边的虚线框,在弹出式菜单中选择“Propertis”命令,在“MenuItemProperties”窗体中在“Caption”一栏中输入“graph”用同样方法,设计其下的两个菜单项: 第一个子菜单项,“ID”为“ID_GRAPH_REC”,“Caption”为“Rectangle”。 第二个子菜单项,“ID”为“ID_GRAPH_ELLIPSE”,“Caption”为“Ellipse”。 (3)在“CMenuitem

6、View”类中加入一些数据成员: public: boolm_rectangle; boolm_ellipse; COLORREFm_crbk;(4)编辑“MenuitemView.cpp”文件中的构造函数,初始化数据成员,加入下面代码: CMenuitemView::CMenuitemView() { m_rectangle=TRUE; m_ellipse=FALSE; m_crbk=RGB(255,0,0); } (5)利用ClassWizard为视图类加入命令消息控制函数及更新命令UI消息控制函数。(6)编辑“MenuitemView.cpp”文件里的菜单命令控制函数

7、。 OnGraphRec函数用m_crbk颜色来填充客户区矩形,并设置布尔型变量m_rectangle、m_ellipse的值。VoidCMenuitemView::OnGraphRec() { CClientDCdc(this); CPennewpen,*oldpen; newpen.CreatePen(PS_SOLID,2,RGB(255,255,0)); oldpen=dc.SelectObject(&newpen);CBrush*pNewBrush,*pOldBrush; pNewBrush=n

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。