mfc 带有复选框的ListBox

mfc 带有复选框的 ListBox

效果:

添加 ListBox 控件

从工具箱拖拽 ListBox 控件到窗口上,并设置属性:

  • 包含字符串:true
  • 所有者描述:Fixed

给ListBox添加控制变量

添加完后,将m_list_box的类型使用CCheckListBox代替CListBox。

添加项

复制代码
	m_list_box.AddString(_T("test list box item 1"));
	m_list_box.AddString(_T("test list box item 2"));
	m_list_box.AddString(_T("test list box item 3"));
	m_list_box.AddString(_T("test list box item 4"));
	m_list_box.AddString(_T("test list box item 5"));

清空所有项

复制代码
	int ncount = m_list_box.GetCount();
	for (int i = ncount - 1; i >= 0; i--)
	{
		m_list_box.DeleteString(i);
	}

获取选中项

复制代码
	CString select_item_text = _T("");
	int total = m_list_box.GetCount();
	for (int i = 0; i < total; i++)
	{
		if (m_list_box.GetCheck(i))
		{
			m_list_box.GetText(i, select_item_text);
		}
	}

设置选中所有项

复制代码
	int total = m_list_box.GetCount();
	for (int i = 0; i < total; i++) 
	{
		m_list_box.SetCheck(i, TRUE);
	}

删除所选项

复制代码
		int ncount = m_list_box.GetCount();
		for (int i = ncount - 1; i >= 0; i--)
		{
			if (m_list_box.GetCheck(i))
			{
				m_list_box.DeleteString(i);
			}
		}
相关推荐
码匠许师傅2 分钟前
【C++三方组件】fmt:C++字符串格式化的前世今生
c++
anew___13 分钟前
舵机——让 Arduino 动起来
c++·stm32·单片机·嵌入式硬件·c
qq_3449205618 分钟前
Qt 鼠标双击QLabel全屏显示图像
c++·qt
f狐0狸x1 小时前
【C++修炼之路】C++继承的探索
c++·继承
虚无的纽扣1 小时前
【C++】C++11的魔法:不止右值引用,C++11赋予的编程神力
c++
码匠许师傅1 小时前
【C++三方组件】RE2:工业级正则的安全与性能
c++
ThornArmor2 小时前
《向内深潜,向外飞掠》
c语言·开发语言·c++·vim·visual studio
j7~2 小时前
【C++微服务项目开发脚手架】(环境篇)虚拟机 + Docker + MySQL/Redis/RabbitMQ/ES/etcd/FastDFS 全套配齐
linux·c++·ubuntu·docker·vmware·项目开发·微服务脚手架
qq_199886872 小时前
第5板块·第4节:性能优化中的高级技巧
c++·人工智能·gpu算力
郝学胜_神的一滴2 小时前
C++20模板元编程 04:变量模板 别名模板与模板Lambda实战
c++·visual studio