vscode 建立一个下拉选框_VS2010/MFC编程入门之二十五(常用控件:组合框控件Combo Box)...

本文介绍了MFC中组合框控件Combo Box的三种类型:简易、下拉式和下拉列表式,以及它们的区别。重点讲解了下拉式和下拉列表式组合框的使用场景。还详细阐述了组合框的创建、风格、通知消息和主要成员函数,包括添加、删除、选择列表项等操作。通过一个实例展示了如何在对话框中动态添加列表项并响应选择变化。
摘要由CSDN通过智能技术生成

上一节鸡啄米讲了列表框控件ListBox的使用,本节主要讲解组合框控件Combo Box。组合框同样相当常见,例如,在Windows系统的控制面板上设置语言或位置时,有很多选项,用来进行选择的控件就是组合框控件。它为我们的日常操作提供了很多方便。

组合框控件简介

组合框其实就是把一个编辑框和一个列表框组合到了一起,分为三种:简易(Simple)组合框、下拉式(Dropdown)组合框和下拉列表式(Drop List)组合框。下面讲讲它们的区别。

简易组合框中的列表框是一直显示的,效果如下图:

下拉式组合框默认不显示列表框,只有在点击了编辑框右侧的下拉箭头才会弹出列表框,列表框弹出后如下图:

下拉列表式组合框的编辑框是不能编辑的,只能由用户在下拉列表框中选择了某项后,在编辑框中显示其文本。下拉列表式组合框如下图:

经过上面的介绍,大家应该知道,最常用的当属下拉式组合框和下拉列表式组合框了,它们在很多时候能使程序看起来更专业,更简洁,让用户在进行选择操作时更方便。

组合框被操作时会向父窗口发送通知消息,这些通知消息及其含义如下:

CBN_CLOSEUP:组合框的列表框组件被关闭,简易组合框不会发送该通知消息

CBN_DBLCLK:用户在某列表项上双击鼠标,只有简易组合框才会发送该通知消息

CBN_DROPDOWN:组合框的列表框组件下拉,简易式组合框不会发送该通知消息

CBN_EDITUPDATE:在编辑框准备显示改变了的正文时发送该消息,下拉列表式组合框不会发送该消息

CBN_EDITCHANGE:编辑框的内容被用户改变了,与CBN_EDITUPDATE不同,该消息是在编辑框显示的正文被刷新后才发出的,下拉列表式组合框不会发送该消息

CBN_ERRSPACE:组合框无法申请足够的内存来容纳列表项

CBN_SELENDCANCEL:表明用户的选择应该取消,当用户在列表框中选择了一项,然后又在组合框控件外单击鼠标时就会导致该消息的发送

CBN_SELENDOK:用户选择了一项,然后按了回车键或单击了下滚箭头,该消息表明用户确认了自己所作的选择

CBN_KILLFOCUS:组合框失去了输入焦点

CBN_SELCHANGE:用户通过单击或移动箭头键改变了列表的选择

CBN_SETFOCUS:组合框获得了输入焦点

组合框控件的创建

MFC将组合框控件的所有操作都封装到了CComboBox类中。

我们在对话框中加入组合框时,可以往对话框模板中拖入Combo Box控件,而后添加CComboBox类型的控件变量使用,但如果我们想在程序中动态创建的话,就要使用CComboBox类的成员函数Create了。Create函数的原型如下:

virtual BO

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值