鸡啄米在上一节中讲的是VS2010的菜单资源,本节主要讲菜单及CMenu类的使用. CMenu类的主要成员函数 MFC为菜单的操作提供了CMenu类,下面鸡啄米就常用的几个成员函数进行简单的介绍. BOOL LoadMenu(UINT nIDResource); 加载菜单资源,并将其附加到CMenu对象上.参数nIDResource指定了要加载的菜单资源的ID.如果菜单加载成功则返回TRUE,否则返回FALSE. BOOL DeleteMenu(UINT nPosition,UINT nFlag…
上一节讲了标签控件Tab Control以后,常用控件的内容就全部讲完了,当然并没有包括所有控件,主要是一些很常用很重要的控件.本节开始鸡啄米将为大家讲解菜单的概念及使用. 菜单简介 菜单在界面设计中是经常使用的一种元素,包括Windows系统中的窗口.智能终端设备的应用界面等都会经常见到菜单的身影.我们在对可视化窗口操作时,菜单确实提供了很大方便. 菜单可以分为下拉式菜单和弹出式菜单. 下拉式菜单一般在窗口标题栏下面显示,大家还记得我们在VS2010/MFC编程入门之二(利用MFC向导生成单文…
上一节中鸡啄米讲了工具栏的创建.停靠与使用,本节来讲解状态栏的知识. 状态栏简介 状态栏相信大家在很多窗口中都能见到,它总是用来显示各种状态.状态栏实际上也是一个窗口,一般分为几个窗格,每个窗格分别用来显示不同的信息和状态等,如菜单项和工具栏按钮的提示信息. 用MFC向导生成的单文档或多文档程序都会自动创建状态栏,大家可以运行下VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)中创建的Example34程序,在结果界面中可以看到窗口底部有个状态栏,该状态栏被分为了几个窗格,分…
前面几节讲了菜单.工具栏和状态栏的使用,鸡啄米本节开始将为大家讲解文档.视图和框架的知识. 文档.视图和框架简介 在VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)创建的单文档工程Example34中,我们可以看到MFC向导自动为我们生成了CExample34Doc类.CExample34View类和CMainFrame类,它们就分别是文档类.视图类和框架窗口类. 文档/视图结构是MFC提供的一种不错的设计,它将数据的处理和显示分开来,这样更便于我们对程序的维护和扩展.下面…
上一节中鸡啄米讲了菜单及CMenu类的使用,这一节讲与菜单有密切联系的工具栏. 工具栏简介 工具栏一般位于主框架窗口的上部,菜单栏的下方,由一些带图片的按钮组成.当用户用鼠标单击工具栏上某个按钮时,程序会执行相应的操作,如果鼠标没有点击,只是停留在某个按钮上一会后,会弹出一个小窗口显示提示信息. 一般工具栏中的按钮在菜单栏中都有对应的菜单项中,即点击工具栏按钮与点击菜单项的效果相同.但工具栏中的按钮都显式的排列出来,操作很方便,而且按钮上的图片描述功能更直观,所以工具栏作为用户操作接口来说比菜单…
上一节中鸡啄米讲了定时器Timer的用法,本节介绍下文件操作类CFile类的使用. CFile类概述 如果你学过C语言,应该知道文件操作使用的是文件指针,通过文件指针实现对它指向的文件的各种操作.这些文件操作函数中有的最终还是调用了操作系统的API函数或者处理过程与之类似,例如在Windows系统中,fread函数就调用了API函数ReadFile. Windows系统的API函数除了ReadFile,还有CreateFile.WriteFile等函数.而MFC基于面向对象的思想,将这些Wind…
前面两节为大家讲了列表视图控件List Control,这一节开始介绍一种特殊的列表--树形控件Tree Control. 树形控件简介 树形控件在Windows系统中是很常见的,例如资源管理器左侧的窗口中就有用来显示目录的树形视图.树形视图中以分层结构显示数据,每层的缩进不同,层次越低缩进越多.树形控件的节点一般都由标签和图标两部分组成,图标用来抽象的描述数据,能够使树形控件的层次关系更加清晰. 树形控件在插入新的树节点时会稍麻烦些,回顾之前的列表框,插入新列表项时调用AddString成员函…
前面两节鸡啄米讲了树形控件Tree Control,本节开始讲解标签控件Tab Control,也可以称为选项卡控件. 标签控件简介 标签控件也比较常见.它可以把多个页面集成到一个窗口中,每个页面对应一个标签,用户点击某个标签时,它对应的页面就会显示.下图是Windows系统配置中标签控件的例子: 使用标签控件我们可以同时加载多个有关联的页面,用户只需点击标签即可实现页面切换,方便灵活的进行操作.每个标签除了可以显示标签文本,还可以显示图标. 标签控件相当于是一个页面的容器,可以容纳多个对话框,…
属性页对话框包括向导对话框和一般属性页对话框两类,上一节鸡啄米讲了如何创建并显示向导对话框,本节将继续介绍一般属性页对话框的创建和显示. 实际上,一般属性页对话框的创建和显示过程和向导对话框是很类似的.鸡啄米将上一节中的向导对话框进行少量修改,使其成为一般属性页对话框. 一般属性页对话框的创建步骤: 1.创建属性页对话框资源 属性页对话框资源的创建方法同向导对话框是一样的,上一讲中的对话框资源不需进行任何修改. 2.创建属性页类 属性页类的创建和向导对话框的属性页类也基本一样,只是一般属性页对话…
鸡啄米在上一节教程中讲了工具栏资源及CToolBar类,本节继续讲解工具栏的相关知识,主要内容包括工具栏的创建.停靠与使用. 工具栏的使用 上一节中鸡啄米提到过,一般情况下工具栏中的按钮在菜单栏中都有对应的菜单项,两者实现的功能相同,要想实现这种效果,只需要将工具栏按钮的ID与对应的菜单栏中菜单项的ID设置为相同值即可. 在实际使用工具栏时,除了前面讲的资源编辑外,其他使用与菜单类似.例如,对COMMAND消息和UPDATE_COMMAND_UI消息,可以像VS2010/MFC编程入门之三十五(…