具体实现步骤举例如下——
1、首先在窗口上拖放一个ListBox控件,假设其资源ID为IDC_LIST1;
2、如上所述修改该ListBox控件的属性(LBS_OWNERDRAWFIXED | LBS_HASSTRINGS);
3、定义CCheckListBox对象,在窗口类的头文件里;
// XXXDlg.h CCheckListBox m_CheckList;
4、然后在CPP文件里,初始化的地方写下两行;
// XXXDlg.cpp BOOL CXXXDlg::OnInitDialog() { // ... m_CheckList.SubclassDlgItem(IDC_LIST1, this); // IDC_LIST1是ListBox控件的资源ID m_CheckList.SetCheckStyle(BS_AUTOCHECKBOX); // ... }
OK,就这么简单!加几条数据看看,是不是有复选框了!
m_CheckListBox.AddString("Test String");
判断复选框是否被选中也很简单,如下:
int iIndex = 0; int iState; iState = m_CheckListBox.GetCheck(iIndex);