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++ 基础入门完全指南
c++
用户805533698031 天前
不止三件套:QObject 属性系统全关键字与运行时反射!
c++·qt
BadBadBad__AK2 天前
线段树维护区间 k 次方和
c++·数学·算法·stl
卷无止境2 天前
Eigen 库如何借助 OpenMP 加速计算
c++·后端
卷无止境2 天前
OpenMPI、MPICH 与 OpenMP:关系、核心概念与架构全解
c++·后端
郝学胜_神的一滴3 天前
CMake 30:循环语法全解|foreach_while双循环精讲、迭代技巧与实战避坑指南
c++·cmake
卷无止境5 天前
C++ 的Eigen 库全解析
c++
卷无止境5 天前
现代 C++特性大盘点:一门脱胎换骨的老语言
c++·后端
郝学胜_神的一滴5 天前
CMake 27:缓存变量的特性、语法、类型与实操全解
c++·cmake
博客18007 天前
酷宝的使用方法,超好用的免费界面库,C++、MFC可用
c++·mfc·界面库·库来帮·酷宝