- 15
- 0
- 约2.12万字
- 约 75页
- 2017-04-19 发布于湖北
- 举报
菜单、工具栏和状态栏
菜单、工具栏和状态栏 ;6.1 创建菜单; 创建菜单可以有几种方法,最简单的方法是用菜单资源编辑器进行设计。在这里,我们把第五章关于模式对话框的例子进行改造,使对话框的弹出方式由在窗口中双击鼠标改为由单击某个菜单命令实现。具体步骤如下:步骤一:在Visual C++ 6.0中,选【File】菜单中的【Open Workspace】菜单项,打开已创建的“Dialog.dsw”文件。
步骤二:在工作区窗口中选择【Resource View】选项卡,展开【Dialog Resources】目录,再展开【Menu】文件,将会看到菜单IDR_MAINFRAME。
步骤三:双击IDR_MAINFRAME,将在菜单资源编辑器中打开菜单资源。
步骤四:在主菜单中增加一个【显示】菜单。用鼠标双击主菜单最右边的空菜单项,或者用鼠标右击,在弹出的快捷菜单中选择【Properties】菜单项。系统将弹出属性对话框。;在【Caption】栏中输入“显示(P)”,括号中的P表示紧跟在它后面的字母“P”是助记符,这样,在程序运行过程中,就可以用Alt+P键来激活【显示】菜单。按【Enter】键继续。
这时,在主菜单中将增加一个“显示”菜单,在助记符P下面有下划线。同时,在生成的菜单的右面和下面各出现一个新的菜单或菜单项,可以继续添加新的菜单或菜单项。
步骤五:在【显示】菜单中增加一个【个人资料】菜单项。用鼠标右键单击【显示】菜单中的空菜单项,在弹出菜单中选择【Properties】选项。单击属性对话框左上角的“图钉”按钮,把对话框“钉”在屏幕上。在属性对话框的【Caption】栏中输入“个人资料(D)” 。;
对于【个人资料】菜单项,Visual C++ 6.0将为该菜单项自动分配一个ID号。单击其他菜单项或者屏幕的其他部分,再选中【个人资料】菜单项,系统在【ID】栏中显示出为该菜单项分配的ID号,其一般格式为MENUITEMxxxxx(xxxxx代表一个整数)。【Prompt】框中的文本是光标处于菜单项时,状态栏显示的帮助信息
在菜单项属性对话框的【General】选项卡中,各选项的含义如下图所示。
步骤六:用鼠标左键按住【显示】菜单,将其拖到【编辑】与【帮助】菜单中间。
这样,利用菜单资源编辑器,我们就很轻松地创建了一个标准的Windows菜??。 ;项目;2. 建立快捷键
在Windows应用程序中的某些菜单项后面有一个组合键,表示一个快捷键(shortcut key),在程序运行过程中,如果用户按下了该组合键,则相应的菜单命令就会被执行。当然,若要使用快捷键选择某个菜单项,就必须事先对其作出定义。现在我们来为刚才创建的菜单添加快捷键,具体步骤如下:
步骤一:在工作区窗口的【Resource View】选项卡中,双击【Accelerator】文件夹,双击IDR_MAINFRAME,则系统会弹出一个加速器表 。
步骤二:在加速器表中浏览一下,发现Ctrl+D还没有被使用,我们就把Ctrl+D设置为菜单项【个人资料】的快捷键。方法是双击加速器表末尾的空行,将弹出快捷键的属性对话框(Accel Properties)。 ; 在属性对话框(Accel Properties)中,各项的含义如表6.2所示。
表6.2 Accel Properties对话框中各选项的含义;步骤三:在对话框中的【ID】下拉列表中选择【ID_DISPLAY_DATA】选项,当选中ID号时,【ID】框中同时显示出此ID号对应的整数,如ID_DISPLAY_DATA=32771。
步骤四:在【Key】列表框中输入“D”,确认【Modifiers】栏中的【Ctrl】复选框被选中,而且【Alt】和【Shift】都未被选中;或者,直接单击【Next Key Typed】按钮,按下Ctrl+D组合键放开,此时系统会自动记录所按下的Ctrl+D键为所要设定的组合键。按【Enter】键继续。
步骤五:为了在【显示】菜单中提示【个人资料】菜单项的快捷键,可以返回6.1.1节中的步骤五,将【Caption】框中的内容修改为“个人资料(D)\tCtrl+D”。
这样,我们就建立了一个完整的菜单资源。
;3 菜单功能的实现
在MFC框架中,菜单命令消息是按照一定的顺序进行传递的。对于一个单文档应用程序,消息传递的顺序为:视图类→文档类→框架类→应用程序类。因此,如果我们在视图类和文档类中同时定义了某个菜单项的消息映射接口时,由于消息首先传递给视图类,在视图类中对此消息做出了响应,所以,文档类中定义的此菜单项的消息映射函数就无法执行。
在菜单资源中,我们定义了MFC如何来构造菜单的结构,同时还指定了菜单的资源ID号,MFC通过ClassWiza
您可能关注的文档
最近下载
- 2025-2026学年小学劳动人美版2024五年级下册-人美版(2024)教学设计合集.docx
- 2025年青岛酒店管理职业技术学院单招笔试英语试题库含答案解析.docx VIP
- 海藻学-3.pdf VIP
- 东风天龙电气系统维修.ppt VIP
- 2026人教版小学语文四年级上册期末考试精选3套试卷(含答案解析).pdf
- 《出纳实务》高职财经专业全套教学课件.pptx
- 毕业论文的答辩与评价.ppt VIP
- 药品质量研究的内容与药典概况详解.ppt VIP
- 西门子通风控制器acx36介绍.pdf
- 2024年青岛酒店管理职业技术学院高职单招(英语/数学/语文)笔试历年参考题库含答案解析.docx VIP
原创力文档

文档评论(0)