VC++ MFC ListBox 复选框
1.把ListBox控件添加到对话框界面上,添加变量命名 m_ListFiles。
2.变量命名控件类型默认是CListBox,找到定义变量命名地方CListBox m_ListFiles,修改成CCheckListBox m_ListFiles;
3.修改ListBox控件的两处属性Owner draw设置为Fixed(LBS_OWNERDRAWFIXED),Has strings设置为True(LBS_HASSTRINGS),否则不成功,运行时报错。
添加数据:
m_ListFiles.AddString(_T("A"));
m_ListFiles.AddString(_T("B"));
检查是否选中,0未选中,1选中
m_CheckListBox.GetCheck(nIndex);
CString strFileName;
int iSel=m_ListFiles.GetCount();
for(int i=0;i<iSel;i++)
{
int ik=m_ListFiles.GetCheck(i);
if(m_ListFiles.GetCheck(i)==1)
{
m_ListFiles.GetText(i,strFileName);
}
}
4. checkbox勾选全选,取消全选
void CFurtherConvertCutCodeView::OnClickedCheckSelectall()
{
// TODO: Add your control notification handler code here
if(BST_CHECKED==!IsDlgButtonChecked(IDC_CHECK_SelectAll))
{
SelectCheckList(0);
}
else
{
SelectCheckList(1);
}
}
void CFurtherConvertCutCodeView::SelectCheckList(int iCheck)
{
int iSel=m_ListFiles.GetCount();
for(int i=0;i<iSel;i++)
{
m_ListFiles.SetCheck(i,iCheck);
}
}

浙公网安备 33010602011771号