MFC CComboBox

1、访问或调用ComboBox

  • 通过GetDlgItem函数获取,如CComboBox* pComboBox = (CComboBox*)GetDlgItem(IDC_COMBO1);
  • 创建和控件绑定的变量,详情请查看下一节的内容

2、创建和控件绑定的变量

创建和CComboBox控件绑定的变量选中组合框控件,右键点击控件并选中菜单“Add Variable”,在如下界面中添加一个和控件绑定的变量,如图所示,我定义的变量为:m_ComboBox

点击Finish按钮,"工程名+Dlg.h"中会新增一行CComboBox m_ComboBox;对应的CPP中也会自动增加代码。

3、设置ComboBox的下拉长度

  • 1、首先要知道两点:一、那就是在设计界面里,点击一下ComboBox的下拉箭头,此时出现的调整框就是ComboBox的下拉调整框。
  • 2、属性里有个 No integral height 钩选项,表示最大长度为设计长度,如果实际内容比设计长度多,就出现滚动条,少就以实际长度显示。

4、常见用法

	//访问ComboBox的另外一种方式,等价于m_ComboBox
	CComboBox* pComboBox = (CComboBox*)GetDlgItem(IDC_COMBO1);

        //添加选项
	m_ComboBox.AddString(L"Item1");
	m_ComboBox.AddString(L"Item3");

	//在指定位置插入选项
	m_ComboBox.InsertString(1,L"Item2");

	//设置某项为选中项
	m_ComboBox.SetCurSel(0);

        //获取选中项,下面示例中选中项文本存储在strSelect中,如下2个函数都可以获取
	int iSelect = m_ComboBox.GetCurSel();
	CString strSelect;
	m_ComboBox.GetLBText(iSelect,strSelect);
	m_ComboBox.GetWindowText(strSelect);

	//删除指定选项
	m_ComboBox.DeleteString(1);

	//删除或清空所有选项
	m_ComboBox.ResetContent();

	//通过选中名查找选项所在位置,下面2个查找函数的区别请自行了解
	int iIndex = m_ComboBox.FindStringExact(0,L"Item3");
	int iIndex2 = m_ComboBox.FindString(0,L"Item3");

	// 设置输入框中可输入的最大字符数
	m_ComboBox.LimitText(5);

5、添加事件响应函数

右键点击控件并选中菜单“Add Event Handler”,在如下界面中根据需要选择消息类型并添加响应此消息的函数名称,如图所示,我定义的函数名为:OnCbnSelchangeCombo1,消息类型选择的是“选项改变(CBN_SELCHANGE)”。点击Add and Edit按钮即完成函数的添加,且光标自动定位到OnCbnSelchangeCombo1函数的实现代码处。

参考博客

https://blog.csdn.net/yunqi415/article/details/6963720

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Allen Roson

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值