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);
	}

}
相关推荐
上去我就QWER10 小时前
解锁Qt元对象系统:C++编程的超强扩展
c++·qt
莫听穿林打叶声儿10 小时前
关于Qt开发UI框架Qt Advanced Docking System测试
开发语言·qt·ui
freedom_1024_10 小时前
【c++ qt】QtConcurrent与QFutureWatcher:实现高效异步计算
java·c++·qt
路弥行至11 小时前
C语言入门教程 | 第七讲:函数和程序结构完全指南
c语言·经验分享·笔记·其他·算法·课程设计·入门教程
minji...11 小时前
C++ 模板进阶
开发语言·c++
lsx20240611 小时前
HTML 音频/视频
开发语言
AC是你的谎言11 小时前
c++仿muduo库实现高并发服务器--connection类
linux·服务器·c++·学习
fantasy5_511 小时前
手写一个C++字符串类:从底层理解String的实现
java·jvm·c++
我叫汪枫11 小时前
【刷机分享】解决K20Pro刷入PixelOS后“网络连接”受限问题(附详细ADB命令)
开发语言·adb·php
老程序员刘飞11 小时前
hardhat 搭建智能合约
开发语言·php·智能合约