MFC中 CComboBox 控件 (1) —添加项、删除项

在 MFC(Microsoft Foundation Classes)中,CComboBox 控件提供了许多操作,使其成为一个非常灵活和功能丰富的界面元素。以下是 CComboBox 的一些常见操作:

1. 添加项

  • AddString: 向组合框中添加一个字符串项。
  • InsertString: 在指定位置插入一个字符串项。

 (1)以下是 AddString 函数的一个基本用法示例:

void CSerialportIdentifyDlg::AddItemsToComboBox()
{
	CComboBox* pComboBox = (CComboBox*)GetDlgItem(IDC_COMBO_SERIALPORT);
	
	pComboBox->AddString(_T("选项 1"));
	pComboBox->AddString(_T("选项 2"));
	pComboBox->AddString(_T("选项 3"));
	// 可以继续添加更多的项...
}

注意事项

  • 字符串参数:AddString 接受一个 LPCTSTR 类型的参数(即指向常量字符串的指针)。这意味着它可以接受一个字符串常量或者指向字符串的指针。
  • 返回值:AddString 返回新添加的项的索引。如果添加失败,则返回 CB_ERRCB_ERRSPACE

 (2)以下是 InsertString 函数的一个基本用法示例:

void CSerialportIdentifyDlg::InsertItemsToComboBox()
{

	int nIndex;
	CComboBox* pComboBox = (CComboBox*)GetDlgItem(IDC_COMBO_SERIALPORT);

	pComboBox->AddString(_T("选项 1"));
	pComboBox->AddString(_T("选项 2"));
	pComboBox->AddString(_T("选项 3"));

	nIndex = pComboBox->InsertString(1, _T("新选项 1"));

	nIndex = pComboBox->InsertString(nIndex + 2, _T("新选项 2"));

	nIndex = pComboBox->InsertString(nIndex + 2, _T("新选项 3"));
}

注意事项

  • 参数InsertString 接受两个参数。第一个是要插入的位置的索引(从 0 开始),第二个是要插入的字符串(LPCTSTR 类型,即指向常量字符串的指针)。
  • 返回值InsertString 返回新插入的项的索引。如果插入失败,则返回 CB_ERRCB_ERRSPACE

2. 删除项

  • DeleteString: 删除指定位置的项。
  • ResetContent: 删除组合框中的所有项。 

以下是 DelectString 函数和 ResetContent 函数的一个基本用法示例: 

void CSerialportIdentifyDlg::DeleteItemFromComboBox()
{
	CComboBox* pComboBox = (CComboBox*)GetDlgItem(IDC_COMBO_SERIALPORT);
	//向列表中添加几个项
	pComboBox->AddString(_T("选项 1"));
	pComboBox->AddString(_T("选项 2"));
	pComboBox->AddString(_T("选项 3"));

	// 假设您想删除索引为 0 的项(即第一个项)
	pComboBox->DeleteString(0);

	// 删除项后,后续项的索引将改变。例如,如果您删除原来索引为 1 的项,需要删除现在索引为0的项。
	pComboBox->DeleteString(0);

	pComboBox->AddString(_T("选项 1"));
	pComboBox->AddString(_T("选项 2"));
	pComboBox->AddString(_T("选项 3"));

	//ResetContent用于清空组合框中的所有项
	pComboBox->ResetContent();
	// 在此之后,您可以根据需要向组合框中添加新的项
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值