02界面编程-4(控件).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 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

文档评论(0)

ww90055 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档