只需要CListCtrl控件中的某些行来设置复选框

Ian*_*anW 2 mfc

我正在使用CListCtrl控件在我的MFC应用程序中显示信息.目前我在SetExtendedStyle中设置了LVS_EX_CHECKBOXES,因此控件中的所有行旁边都有一个复选框.但我想要的是,只有控件中的某些行具有复选框.这可能吗 ?如果这是怎么做的?

谢谢

伊恩

Ser*_*ier 6

对于不应该有复选框的每个项目:

LVITEM lvi;
lvi.stateMask = LVIS_STATEIMAGEMASK;
lvi.state = INDEXTOSTATEIMAGEMASK(0);
::SendMessage(m_hWnd, LVM_SETITEMSTATE, nItem, (LPARAM)&lvi);
Run Code Online (Sandbox Code Playgroud)

要"创建"项目的复选框:

SetCheck(Item, true/false);
Run Code Online (Sandbox Code Playgroud)

  • 快速Q - 单击复选框所在的空间会出现一个,是我,还是ClistCtrl的一个功能? (2认同)