如何将复选框控件添加到mfc中的listcontrol子项

时间:2014-06-05 11:23:52

标签: mfc

我需要将复选框控件添加到listcontrol子项。首先我会告诉你我做了什么,最初我添加了一个报表样式的列表控件,并在列表视图中添加了复选框样式,如下所示。

m_MfpListControl.SetExtendedStyle(LVS_EX_CHECKBOXES);

此代码的步骤是将复选框添加到第一个列。但是,我想随机添加复选框到子项,如,

Column1 | Column2 | Column3 | COlumn4


[] Item1 | [] subitem1 | [] subitem2 | [] subitem3

[] - 代表Checkbox

添加“Item1”并不是什么大不了的事,但是添加到子项下让我失望,而且我尝试了插入项目后的manny方式,我正在设置特定项目的状态,

m_MfpListControl.SetItemState(0,INDEXTOSTATEIMAGEMASK(3),LVIS_STATEIMAGEMASK);

但是这也没有用,因为我能够添加和删除第一列的复选框,我尝试采用相同的方法,如设置项目状态,就像我使用“SetItemState”一样)“API,以便将复选框控件添加到子项目,不幸的是,它不适用于子项目。

任何人都可以让我知道正确的方法,以便我能够在子项目中添加复选框。

1 个答案:

答案 0 :(得分:0)

我使用此类在子项目上添加复选框:

http://www.codeproject.com/Articles/8112/CQuickList

它需要LVS_OWNERDATA。就我而言,这不是问题。

此类还在子项目上添加复选框,但没有LVS_OWNERDATA:

http://www.codeproject.com/Articles/29064/CGridListCtrlEx-Grid-Control-Based-on-CListCtrl

维尼