- 1、本文档共73页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
按钮控件发送的消息: 按钮控件只能发送通知码为BN_CLICKED(单击按钮)和BN_DOUBLECLICKED(双击按钮)的WM_COMMAND消息,我们经常需要编写按钮的BN_CLICKED消息处理函数。 CButton类提供了一些成员函数实现对按钮控件对象的控制和管理,如利用成员函数GetCheck()或SetCheck()获取或设置单选按钮或复选框的当前状态,利用成员函数GetButtonStyle()或SetButtonStyle()获取或改变按钮控件的风格。 例 编写一个对话框应用程序ColrButn,对话框中有两个用于选择颜色模式的单选按钮和三个用于选择具体颜色的复选框,只有在彩色模式下才能选择三种不同颜色的组合。当用户单击“应用”按钮,对话框右边的按键按钮将根据选择的颜色实现按钮的自画。 7.3.7 列表框 Windows提供了几个列表类型控件,如列表框、组合框、列表视控件和树视控件,其中列表框是一种最简单的列表类型控件。 列表框(List box)是一个列出了一些文本项的窗口,常用来显示类型相同的一系列清单,如文件、字体和用户等。与复选框类似,用户可以选择其中一项或多项,但同时列表框中选项的数目和内容可以动态变化,用户可往列表框中添加或删除某些选项。 列表框有单选Single、多选Multiple、扩展多选Extended、不选None四种风格,在控件Properties属性对话框的Selection下拉框中设置。 当列表框中发生了某个事件,列表框就会向其父窗口发送一条通知消息。列表框常用的通知消息有:用户双击列表框中的列表项时发送消息LBN_DBLCLK,列表框失去键盘输入焦点时发送消息LBN_KILLFOCUS,列表框获得键盘输入焦点时发送消息LBN_SETFOCUS,列表框中的当前选择项发生改变时发送消息LBN_SELCHANGE。 封装列表框控件的MFC类是CListBox类,当列表框创建之后,在程序中可以通过调用CListBox类成员函数来实现列表项的添加、删除、修改和获取等操作。 例 编写一个对话框应用程ExmpList,对话框中有一个列表框,用户单击列表框中的一个列表项(一个国家)时,在四个编辑框分别显示指定国家的名称、首都、面积和人口。单击“添加”按钮,“国家”编辑框中的文本将被添加到列表框中;单击“删除”按钮,当前的列表项将被删除。 7.3.8 组合框 编辑框和列表框在使用时受到一些限制,编辑框允许用户输入文本内容,但用户却不能直接选择以前已输入的文本内容。列表框可列出各种可能的选项,但用户却不能在列表框中输入新的列表项。 组合框(Combo box)吸收了列表框和编辑框的优点,它可以显示列表项供用户进行选择,也允许用户输入新的列表项。实质上,组合框是多个控件的组合,包括编辑框、列表框和按钮。 组合框有简单组合框(Simple)、下拉组合框(Dropdown)和下拉列表框(Drop List)等三种形式,通过控件Properties属性对话框Styles页面的Type下拉框设置这三种形式。 组合框控件的Data属性: 与编辑框或列表框相比,组合框有一个新的功能属性,可以通过组合框控件属性对话框的Data页面添加初始的列表项。注意,每输入完一个列表项,按下Ctrl+Enter键后才能换行输入下一项。也可以在对话框类的初始化成员函数OnInitDialog()中编写代码添加列表项。 组合框发送的消息 : 关闭组合框消息CBN_CLOSEUP 打开列表框消息CBN_DROPDOWN 双击列表项消息CBN_DBLCLK 选择一个列表项并按下Enter键或单击下拉按钮隐藏列表框时发送消息CBN_SELENDOK 当前选项被取消时(如重新选择其它控件或关闭对话框)发送消息CBN_SELENDCANCEL 当前选项改变消息CBN_SELCHANGE 当组合框的编辑框中的文本被修改且新的文本显示之后发送消息CBN_EDIT CHANGE 当编辑框中的文本被修改且新的文本显示之前发送消息CBN_EDITUPDATE 组合框失去键盘输入焦点消息CBN_KILLFOCUS 组合框获得键盘输入焦点消息CBN_SETFOCUS。 例 编写一个单文档应用程序ExmpCombo,执行“测试控件|组合框”命令打开一个对话框,初始的对话框有一个用于显示标准控件名的组合框,当用户在组合框下拉的列表框中选择一个控件时,该控件将显示在对话框的右部。当用户在组合框的编辑框中输入一个列表项并单击“应用”按钮,一个指定标题的静态文本控件将出现在对话框的右部。 编程说明与实现:P291,例7-10运行结果: 7-22,7-24,7-25,7-27,7-31,7-34,7-37, 7-4
文档评论(0)