Windows图形界面(GUI)-MFC-C/C++ - 组合框(Combo Box) - CComboBox

目录

[组合框(Combo Box) - CComboBox](#组合框(Combo Box) - CComboBox)

基本概念

成员方法

示例代码


组合框(Combo Box) - CComboBox

基本概念
  • 组合框类型:组合框可以是简单的(只能从列表中选择),也可以是下拉式的(允许用户输入和选择)。

  • 数据绑定:组合框可以绑定到数据源,以便动态显示数据。

  • 事件处理:可以响应用户的选择事件,如选择项的改变。

成员方法
  • Create:创建组合框控件并将其附加到 CComboBox 对象。

  • AddString:向组合框的列表部分添加一个字符串。

  • DeleteString:从组合框的列表部分删除一个字符串。

  • InsertString:在组合框的列表部分的指定位置插入一个字符串。

  • ResetContent:清除组合框中的所有字符串。

  • GetCount:获取组合框中字符串的数量。

  • GetCurSel:获取组合框中当前选中项的索引。

  • SetCurSel:设置组合框中当前选中的字符串。

  • GetLBText:从组合框的列表部分获取指定索引的字符串。

  • GetLBTextLen:获取组合框的列表部分指定索引的字符串长度。

  • SetDroppedWidth:设置组合框下拉列表的最小宽度。

示例代码
cpp 复制代码
void CMainDlg::OnBnClickedButton18()
{
	CString strComboText;
	m_ComboItem.GetWindowTextW(strComboText);
	if (strComboText.IsEmpty() == FALSE)
	{
		m_ComboBox.AddString(strComboText);
	}
}

void CMainDlg::OnBnClickedButton22()
{
	if (m_ComboBox.GetCount() > 0)
	{
		m_ComboBox.SetCurSel(0);
	}
}

void CMainDlg::OnBnClickedButton19()
{
	int nIndex = m_ComboBox.GetCurSel();
	if (nIndex != CB_ERR)
	{
		m_ComboBox.DeleteString(nIndex);
		OnBnClickedButton22();
	}
}

void CMainDlg::OnBnClickedButton20()
{
	int nIndex = m_ComboBox.GetCurSel();
	if (nIndex != CB_ERR)
	{
		CString strComboText;
		m_ComboItem.GetWindowTextW(strComboText);
		m_ComboBox.InsertString(nIndex, strComboText);
	}
}

void CMainDlg::OnBnClickedButton21()
{
	m_ComboBox.ResetContent();
}

void CMainDlg::OnBnClickedButton23()
{
	int nIndex = m_ComboBox.GetCurSel();
	if (nIndex != CB_ERR)
	{
		CString strComboText;
		m_ComboBox.GetLBText(nIndex, strComboText);
		AfxMessageBox(strComboText);
	}
}

void CMainDlg::OnCbnDropdownCombo2()
{
	m_ComboBox.ResetContent();

	CString strComboText;

	for (size_t i = 0; i < 5; i++)
	{
		strComboText = "Item";
		m_ComboBox.AddString(strComboText);
	}

}
相关推荐
urkay-3 分钟前
Android getDrawingCache 过时废弃
android·java·开发语言·kotlin·iphone·androidx
小oo呆6 分钟前
【学习心得】Python好库推荐——pipx
linux·开发语言·python
CoderYanger9 分钟前
C.滑动窗口-求子数组个数-越短越合法——3258. 统计满足 K 约束的子字符串数量 I
java·开发语言·算法·leetcode·1024程序员节
幽络源小助理23 分钟前
《已调试》SpringBoot景区寄存管理系统源码 - 免费JavaWeb项目下载 | 幽络源
java·开发语言·spring boot
豆沙沙包?27 分钟前
2025年--Lc302-415. 字符串相加--java版
java·开发语言
JIngJaneIL29 分钟前
基于Java民宿管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot
azoo29 分钟前
cv::Mat 取元素引起的报错
c++·opencv·计算机视觉
杰克尼29 分钟前
蓝桥云课-13. 定时任务
java·开发语言·算法
m0_7269659832 分钟前
RAG小实战
开发语言·python
元素之窗37 分钟前
MATLAB 的输入与输出:一篇速查博客
开发语言·matlab·php