MFC combo box 下拉框 快速使用

简介: 快速使用MFC combobox 的简单功能,本人博客,csdn搬运。

前言

我很菜,看得懂就看,看不懂很正常,出门左转,我尽量想写让人能看懂,当然主要是我自己记录用

正文

## 创建一个下拉框
工具箱->Combo Box 拽过去就完事了
当然,操作界面在.rc文件的Dialog资源里的某个你要做的界面里,双击进去看,应该知道吧...
## 添加变量
好的正题来了,添加变量,在下拉框的地方右键,添加变量,会自动生成一个变量并同时生成一个和这个下拉框绑定的关系语句,

 void CIrTestDlg::DoDataExchange(CDataExchange* pDX)
{
    CDialogEx::DoDataExchange(pDX);
    //    DDX_Control(pDX, IDC_COMBO2, m_Combo2_lst);
    DDX_Control(pDX, IDC_COMBO2, m_Combo2_lst);
}
AI 代码解读

声明的地方多出来这么一句

CComboBox m_Combo2_lst;
AI 代码解读

别的地方不知道还有没有变化,因为一开始我用软件添加变量失败之后试过直接做这两处改动,不知道为什么我定义的m_Combo2_lst并没有生效成下拉列表里的东西。不管啦,用VS打开是可以直接添加变量的。

添加内容

我不知道用点点点的方法怎么添加,我是在初始化的地方用代码写的
就是这个函数里面,

BOOL CIT::OnInitDialog()//CIT应该是你的主窗口名字
AI 代码解读

写这样的东西

m_Combo2_lst.AddString(_T("hello"));
m_Combo2_lst.AddString(_T("sd"));
m_Combo2_lst.AddString(_T("world"));
AI 代码解读

运行之后,就可以看见下拉框里面的东西了

获取选中

    CString str; 
    int nIndex;
    nIndex = m_Combo2_lst.GetCurSel();//获取当前的选中项的标号ID 从0开始,按照显示的顺序 0-xx
    //如果顺序和你加入时候不一样,那么一定是因为你的自动排序没有关 一个名字为Sort 的行为,把它从True改成False
    str.Format(_T("%d"), nIndex);// str 为nIndex的字符串格式
AI 代码解读

操作选中

0为第0项,可以改为1、2、3...ect,当然,你首先得有这些项

m_Combo2_lst.SetCurSel(0);//设置选中为第0项,一般用于初始化
AI 代码解读

下拉框设置成不可输入的

把Type的值从"Dropdown"改成"下拉列表",当然他也可能是个英文值,一共三个选项 ,改改试试吧,总有一款是对的。

下拉框被改变的事件

双击下拉框,就会生成并进入,一般这个时候获取当前下拉框被选中的ID,然后处理

以上,感觉可以直接轻松用下拉框了。

目录
打赏
0
0
0
0
19
分享
相关文章
基于Apriori关联规则的电影推荐系统(附python代码)
这是一个基于Apriori算法的电影推荐系统概览。系统通过挖掘用户评分数据来发现关联规则,例如用户观看某部电影后可能感兴趣的其他电影。算法核心是逐层生成频繁项集并设定最小支持度阈值,之后计算规则的置信度。案例中展示了数据预处理、频繁项集生成以及规则提取的过程,具体包括用户评分电影的统计分析,如1-5部电影的评分组合。最后,通过Python代码展示了Apriori算法的实现,生成推荐规则,并给出了一个简单的推荐示例。整个过程旨在提高推荐的精准度,基于用户已评分的电影推测他们可能尚未评分但可能喜欢的电影。
基于Apriori关联规则的电影推荐系统(附python代码)
操作系统中的窗口焦点和事件的影响
操作系统中的窗口焦点和事件的影响
215 0
OpenCV(三十四):轮廓外接最大、最小矩形和多边形拟合
OpenCV(三十四):轮廓外接最大、最小矩形和多边形拟合
869 0
Eclipse下STM32开发环境之安装配置(一)
Eclipse下STM32开发环境之安装配置(一)
634 1
Eclipse下STM32开发环境之安装配置(一)
解决 Win11 打开文件夹很慢-资源管理器卡顿
解决 Win11 打开文件夹很慢-资源管理器卡顿
1994 0
TypeScript入门指南:静态类型检查的优势
TypeScript是一种由微软开发的开源编程语言,它是JavaScript的超集,添加了静态类型检查和其他一些新特性。在前端开发中,JavaScript是最常用的编程语言之一,但由于JavaScript是一种动态类型语言,它在编译时无法捕获所有类型错误,导致在运行时可能出现一些难以调试和潜在的bug。TypeScript的出现解决了这个问题,为JavaScript添加了静态类型检查,使得我们能够在编译时发现潜在的类型错误,从而提高代码的可靠性和可维护性。本文将介绍TypeScript的入门指南,并着重讨论静态类型检查的优势。
441 0
关于VS2017调试时,字符数组显示"字符串中的字符无效"问题
关于VS2017调试时,字符数组显示"字符串中的字符无效"问题
911 0
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问