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