下拉框的类型:

Dropdown:可以从下拉列表中选择一项,也可以自己输入;
Drop List:只能从下拉列表中选择一项,不能修改。

1. 向下拉框控件添加数据

方法(1)在属性中的Data中添加,不同选项用分号间隔

方法(2)通过变量的方法来添加选项

首先给下拉框控件添加一个变量,然后在初始化dlg的函数中可以给下拉框加一些选项

//下拉框操作区域//下拉框添加选项m_combo.AddString(_T("青菜"));m_combo.AddString(_T("白菜"));m_combo.AddString(_T("西兰花"));

效果如下所示:

如果要自定义插入到某个位置的话,可以使用如下代码:

 //另外如果想要自定义插入位置的话可以如下使用m_combo.InsertString(0, _T("秦椒"));m_combo.InsertString(1, _T("红薯"));m_combo.InsertString(4, _T("玉米"));

效果如下:

2.如何删除下拉框中的选项

(1)删除其中单个选项

这里设置一个按钮,通过点击按钮可以实现删除某个选项

void CMFC_Test1Dlg::OnBnClickedButton8()
{// TODO:  在此添加控件通知处理程序代码//删除第N个选项,这里的选项选择的为0,即第一个选项m_combo.DeleteString(0);
}

点击按钮的效果如下所示:

(2)清空所有的选项

这里设置一个按钮,通过点击按钮可以实现清空所有选项

void CMFC_Test1Dlg::OnBnClickedButton9()
{// TODO:  在此添加控件通知处理程序代码//清空下拉框中所有的选项m_combo.ResetContent();
}

3.设置默认的选中选项 

在初始化dlg函数中,默认选中某个选项的代码如下:

 //下拉框默认选中某个选项,这里设置默认为第一个选项m_combo.SetCurSel(0);

4.获取下拉框选择的序号以及选项内容

这里设置一个按钮,通过点击事件来获取下拉框选中的序号以及内容

对应点击事件的代码如下:

void CMFC_Test1Dlg::OnBnClickedButton10()
{// TODO:  在此添加控件通知处理程序代码//获得下拉框选中的序号int index = m_combo.GetCurSel();//通过序号来获得对应的选项内容TCHAR szText[100] = { 0 };m_combo.GetLBText(index, szText);//弹出对话框来提示选中的内容MessageBox(szText);
}

效果如下所示:

5.下拉框的改变事件

比如在实际应用中,有两个下拉框选项,第一个来选择蔬菜或者水果,选择了之后会选择第二个的选项会随之变化

具体的代码如下所示,简单示例可以自己尝试一下、

void CMFC_Test1Dlg::OnCbnSelchangeCombo2()
{// TODO:  在此添加控件通知处理程序代码//首选获取下拉框1选择的是蔬菜还是水果;0---蔬菜;1---水果int i = m_combo2.GetCurSel();//判断为蔬菜的话对下拉框2进行添加蔬菜if (i == 0){m_combo.ResetContent();//清空下拉框中所有的选项m_combo.AddString(_T("土豆"));m_combo.AddString(_T("玉米"));m_combo.AddString(_T("红薯"));m_combo.AddString(_T("青菜"));m_combo.AddString(_T("白菜"));m_combo.AddString(_T("西兰花"));}//判断为水果的话对下拉框2进行添加水果else if (i == 1){m_combo.ResetContent();//清空下拉框中所有的选项m_combo.AddString(_T("香蕉"));m_combo.AddString(_T("苹果"));m_combo.AddString(_T("西瓜"));m_combo.AddString(_T("柚子"));m_combo.AddString(_T("草莓"));m_combo.AddString(_T("莲雾"));}}

效果如下所示:

【MFC开发(8)】下拉框控件Combo Box相关推荐

  1. MFC下拉框控件用法

    目录 一.属性方式设置下拉框内容 1.Combo Box下拉框 2.Data属性 3.Type属性 4.Sort属性 二.初始化OnInitDialog设置下拉框内容 1.添加Combo Box下拉框 ...

  2. DevExpress的下拉框控件ComboxBoxEdit怎样绑定键值对选项

    场景 DevExpress的下拉框控件ComboBoxEdit控件的使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1028 ...

  3. DevExpress的下拉框控件ComboBoxEdit控件的使用

    场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...

  4. DevExpress的下拉框控件LookUpEdit的使用、添加item选项值、修改默认显示值

    场景 Winform控件-DevExpress18下载安装注册以及在VS中使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1 ...

  5. JavaScript--在页面的下拉框控件中遍历出日期--先天下能力工场

    在单独的javascript文件中建立如下代码,然后在jsp或者html页面中引用该文件,即可实现自动遍历生成option下拉框控件 function pageInit() { makeYear(); ...

  6. 《实用VC编程之玩转控件》第6课:ComboBox下拉框控件

    本文转载自:VC驿站 https://www.cctry.com/thread-297426-1-1.html 1.向下拉框控件添加数据: a.通过Data属性添加,以分号间隔: b.向下拉框的结尾添 ...

  7. VS2019/MFC编程入门教程:组合框控件Combo Box

    上一节讲了列表框控件ListBox的使用,本节主要讲解组合框控件Combo Box.组合框同样相当常见,例如,在Windows系统的控制面板上设置语言或位置时,有很多选项,用来进行选择的控件就是组合框 ...

  8. 组合框控件Combo Box和CComboBox类

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

  9. winform 下拉框(自定义下拉框控件)

    项目中遇到需要下拉框列表内容为线类型或点类型图形的需求,想到可以使用手绘线条和图形的方式来实现下拉列表内容自定义,记录下来供大家参考学习之用. 在项目中添加一个组件 添加完之后会显示如下设计界面 这里 ...

  10. spinner 下拉框控件

    spinnerMode=dropdown时,为下拉模式 spinnerMode=dialog时,会在界面中间弹出 Android:popupBackground="#f0000000&quo ...

最新文章

  1. 阿里巴巴Druid,轻松实现MySQL数据库加密!
  2. 栈,队列,单链表,双向链表
  3. 纵观2010年的ng2b
  4. hsweb提取页面查询参数_zabbix-基础系列(七)-zabbix用户参数
  5. 收藏 | PyTorch实现各种注意力机制
  6. 单调队列:temperature
  7. java.lang.InstantiationException: class has no zero argument constructor
  8. SQL 分组求和+行转列
  9. 15-基于51单片机的篮球计时器
  10. oracle中date错误,ORA-01830: date format picture ends before converting entire input string
  11. rfm模型python_Python pandas RFM模型应用实例详解
  12. 幽默感也有套路:可用数学模型量化
  13. php mysql插入的数据有引号,PHP引号转义中解决POST,GET,Mysql数据自动转义问题
  14. 大数据战略上升为国家战略,悄悄告诉你大数据大牛都在读的8本书
  15. 人工智能算法工程师成长曲线
  16. Python实现发送邮件(实现单发/群发邮件验证码)
  17. 慕课网Flask高级编程实战-7.静态文件、模板、消息闪现与Jinja2
  18. OSChina 周二乱弹 ——女王节 教你撩妹新技能
  19. 【信管9.3】项目干系人管理
  20. CSS3弹性布局 滚动条样式

热门文章

  1. 用Markdown记笔记后转换成html
  2. 使用Bind配置DNS Load Balancing
  3. 移植基于Qt4.4-tp1的WebKit到ARM平台
  4. jms是java平台中面向_面向Web的JMS应用系统
  5. hightec教程_如何用VectorCAST/C++做单元集成测试?
  6. VS实用小工具(检测代码内存泄漏等问题)
  7. 在Vs2013下编译FreeCAD0.17源码
  8. KCG-VISION:简介(一款快速开发机器视觉的软件)
  9. oa导入表格html,oa系统表单模板导入操作过程
  10. MySQL做学生考勤系统_Jsp+Ssh+Mysql实现的Java Web学生考勤管理系统