- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
2.控件
控件(control)是一类用于显示数据、接受输入和完成操作的图形对象,一般放置在对话框或窗口中。
1)控件类
MFC 9.0(VC08)中有35个控件类,它们都是从CWnd类直接或间接派生的。参见右图。
常用的控件类有:
CStatic(静态文本):一种静态显示的窗口,一般用于标注(label)——显示静态文本串。它不能接受鼠标和键盘输入,也不能向其父窗口(对话框等)发送WM_COMMAND消息。静态控件有时也作为图片框,在其中显示图像
CEdit(编辑控件):一种可编辑文本的窗口,用于接受用户的文本输入。在该类中,提供了大量的文本编辑函数及通知消息的响应接口。如Copy、Cut、Paste、Clear、Undo、SetSel、ReplaceSel、GetSel、GetLine,ON_EN_CHANGE(改变OnChange*)、ON_EN_SETFOCUS(获得输入焦点OnSetfocus*)、ON_EN_KILLFOCUS(失去输入焦点OnKillFocus*)。
可以通过设置编辑控件的“Multiline”属性为“True”来实现多行文本的显示。这时还可以设置“VScroll”属性为“True”,来支持多行文本的垂直滚动。( 缺省情况下,编辑控件的“Multiline”属性为“False”,“VScroll”属性也为“False”[而且不能修改设置]。只有“HScroll”属性缺省为“True”,支持单行文本的水平滚动。)
CButton(按钮):用于执行命令。MFC在该类中为按钮(pushbutton)、复选框和单选钮提供编程接口。按钮控件有两个主要的通知消息:ON_BN_CLICKED(单击OnBnClicked*)和ON_BN_ DOUBLECLICKED(双击OnDoubleclicked*)
复选框(check box核对盒):可选中(TRUE设置状态)或不选(FALSE取消设置状态)。在一组复选框中,可以有多个复选框被选中,也可以一个复选框都不选,没有排他性
单选钮(radio button收音机钮):也可选中(TRUE设置状态)或不选(FALSE取消设置状态),但在一组单选钮中,每次只能有一个单选钮被选中,且必须有有一个被选中,具有排他性
CListBox(列表框):显示一串项目列表供用户查看和选择。常用函数有:GetSel / SetSel、GetCurSel / SetCurSel、AddString / InsertString / DeleteString等
CComboBox(组合框):是编辑框与列表框的组合。用户可在编辑框内输入和选择表项,也可从列表框中选择表项,编辑框会显示选中的表项。有三种风格的组合框:
简单组合框(CBS_SIMPLE):列表始终可见
下拉组合框(CBS_DROPDOWN):列表只是在下拉时可见,编辑框可编辑
下拉表组合框(CBS_DROPDOWNLIST):列表也只是在下拉时可见,但编辑框不可编辑
其他比较常用的控件类有:CProgressCtrl(进度控件类)、CSliderCtrl(滑块控件类)、CSpinButtonCtrl(翻滚按钮控件类)、CTabCtrl(选卡控件类)和CTreeCtrl(树形控件类)等,由于时间关系,本课程不讲。但是其中翻滚按钮控件类,在下面的例子中会讲到其使用方法。
VC08的功能包中新增了100个MFC控件类,其中43个是从CWnd派生的,其余57个都是直接(或间接)从CObject类派生的,其中有29个为功能区控件。参见下图。
2)控件工具箱
控件一般被放置在对话框中,在VS的对话框编辑器中有一个控件工具箱,用于向对话框中添加各种控件(29种)。参见右图。
3)使用控件
为了演示几种主要控件的功能和使用方法,我们举一个收集个人信息的操作型对话框例子。
为此另创建一个“基于对话框的”(不是“单文档”或“多个文档”)类型的应用程序PersonInfo,其对话框资源的设计如下图。
对输入型对话框,只要为控件设置了成员变量,在对话框进行初始化时,以及当对话框被桉“确定”钮关闭后,都会自动进行数据交换,所以只需直接设置或使用成员变量的值即可。
个人信息对话框
但本例是基于对话框的应用程序,属于操作型对话框,需要自己在对话框的初始化函数中对各个控件的取值进行初始化;还要(在对话框关闭前)获得用户当前的输入和选择。这些操作,都必须自己调用CWnd的有关成员函数,或另外创建控件类后再调用其成员函数来完成。
下面是PersonInfo项目对话框中控件的ID设置表:
控件 类型 ID 姓名 编辑控件 IDC_NAME 男 单选钮 IDC_MALE 女 单选钮 IDC_FEMALE 年龄 编辑控件 IDC_AGE 翻滚控件 IDC_S
您可能关注的文档
最近下载
- 《校园危机事件应对与处理》专题讲座.pptx VIP
- 一次性使用中心静脉导管套装产品技术要求标准2024年.docx VIP
- 《工程伦理》课程教学大纲.docx VIP
- GB50217-2018 电力工程电缆设计标准.docx VIP
- (高清版)-B-T 17799.2-2023 电磁兼容 通用标准 第2部分:工业环境中的抗扰度标准.pdf VIP
- 2025山西航空产业集团有限公司校园招聘86人(第二批)笔试参考题库附答案解析.docx VIP
- 屋顶光伏发电项目施工方案.doc
- 四川省2024年普通高校对口招生统一考试语文真题(含答案解析).docx VIP
- 企业发展五年规划目录.PDF VIP
- 2025年电信人工智能学习考试题库(含答案).pdf VIP
文档评论(0)