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