使用Windows标准控件
我们在前面曾提到过,控件是一些行为标准化了的窗口,一般用于对话框或其它窗口中充当与用户交互的元素。在Visual C++中,可以使用的控件分成三类:
(1) Windows标准控件
Windows标准控件由Windows操作系统提供,在Windows 95中还提供了一些新增的控件。所有这些控件对象都是可编程的,我们可以使用Visual C++提供的对话框编辑器把它们添加到对话框中。Microsoft基础类库(MFC)提供了封装这些控件的类,它们列于表6.1。
表6.1 Windows标准控件
控件 | MFC类 | 描述 |
动画 | CAnimateCtrl | 显示连续的AVI视频剪辑 |
properties文件用什么打开>interface with按钮 | CButton | 用来产生某种行为的按钮,以及复选框、单选钮和组框 |
组合框 | CComboBox | 编辑框和列表框的组合 |
编辑框 | CEdit | 用于键入文本 |
标题头 | CHeaderCtrl | 位于某一行文本之上的按钮,可用来控制显示文件的宽度 |
delegate词组热键 | CHotKeyCtrl | 用于通过按下某一组合键来很快的执行某些常用的操作 |
图象列表 | CImageList | 一系列图象(典型情况下是一系列图标或位图)的集合。图象列表本身不是一种控件,它常常是和其它控件一起工作,为其它控件提供所用的图象列表 |
列表 | CListCtrl | 显示文本及其图标列表的窗口 |
列表框 | CListBox | 包括一系列字符串的列表 |
进度 | CProgressCtrl | 计算机编程入门要求 用于在一较长操作中提示用户所完成的进度 |
多格式文本编辑 | CRichEditCtrl | 提供可设置字符和段落格式的文本编辑的窗口 |
滚动条 | CScrollBar | 为对话框提供控件形式的滚动条 |
滑块 | CSliderCtrl | 包括一个有可选标记的滑块的窗口 |
旋转按钮 | CSpinButtonCtrl | 提供一对可用于增减某个值的箭头 |
静态文本 | CStatic | 常用于为其它控件提供标签 |
状态条 | CStatusBarCtrl | 用于显示状态信息的窗口,同MFC类CStatusBar类似 |
续表6.1
控件 | MFC类 | 描述 |
选项卡 | CTabCtrl | 在选项卡对话框或属性页中提供具有类似笔记本中使用的分隔标签的外观的选项卡 |
工具条 | CToolBarCtrl | 具有一系列命令生成按钮的窗口,同MFC类CToolBar类似 |
工具提示 | CToolTipCtrl | 一个小的弹出式窗口,用于提供对工具条按钮或其它控件功能的简单描述 |
树 | CTreeCtrl | 用于显示一系列的项的继承结构 |
前面提到过,在MFC中,类CWnd是所有窗口类的基类,很自然的,它也是所有控件类的基类。Windows格式工厂卸载不干净标准控件在以下环境下提供:
∙Windows 95
∙Windows NT 3.51及以后版本
∙Win32s 1.3
∙注意:
∙Visual C++ 4.2及以后版本不再支持Win32s。
(2) ActiveX控件
ActiveX控件可用于对话框中,也可用于HTML文档中。这种控件过去被称为OLE控件。本书将在专门的章节中来讲述关于ActiveX控件的知识。这里仅指出ActiveX控件使用了与标准控件完全不同的接口和实现方法。
(3) 其它MFC控件类
除了Windows标准控件和自己编写的或者来自于第三方软件开发商的ActiveX控件以外,MFC还提供了另外三种控件,它们由下面的三个类进行封装:
∙类CBitmapButton用于创建以位图作为标签的按钮,位图按钮最多可以包括四个位图图片,分别代表按钮的四种不同状态。
∙类CCheckListBox用于创建选择列表框,这种列表框中的每一项前面有一个复选框,以决定该项是否被选中。
∙类CDragListBox用于创建一种特殊的列表框,这种列表框允许用户移动列表项。 oracle怎么看执行计划好坏
在本章我们仅讲述第一类控件,即Windows标准控件。所涉及的内容包括各个控件的使用及相应的技巧。
第一节 使用对话框编辑器和ClassWizard
对于大多数Windows标准控件,我们一般都使用对话框编辑器来将它们添加到对话框中。
图6. 1 在ResourceView中选择对话框
IDD_DIALOGDEMO_DIALOG
图6. 2 控件的Properties对话框
图6. 3 对话框编辑器的Controls工具窗口
在下面的过程中,我们将一个编辑框控件添加到在第四章创建的基于对话框的MFC框架应用程序的主对话框窗口中。
1. 首先,在Workspace窗口的ResourceView选项内双击DialogDemo resources\Dialog节点下的IDD_DIALOGDEMO_DIALOG图标。上面的操作如图所示。
2. 用鼠标选中标有“要做……”的静态文本控件。右击鼠标,从上下文菜单中选择Properties,打开如图6.2所示的对话框,在Caption文本框中输入新的控件文本:“在下面的文本框中输入一些字符”,然后将静态文本控件拖动到对话框的左上角。
3. 从Controls工具窗口(如图6.3所示,如果在你的资源编辑器中看不到该工具窗口,可以在工具条上右击鼠标,从上下文菜单中选择Controls)中选择编辑控件图标,在对话框中绘制一个编辑框控件,如图6.4所示。
在该编辑框控件的Properties窗口的General选项卡中输入其ID为IDC_EDIT。然后在Styles选项卡下将Multiline复选框划上勾,并消除Auto HScroll复选框前的勾。
4. 右击该编辑框控件,从上下文菜单中选择ClassWizard命令,打开ClassWizard对话框,该对话框看起来如图6.5所示。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论