在 MFC 的 CListCtrl 类中,SetItemState 是一个用于设置列表控件中项的状态的常用方法。它的原型如下:
BOOL SetItemState(
  int nItem,
  UINT nState,
  UINT nStateMask
);

其中,nItem 是项的索引,nState 是要设置的状态,而 nStateMask 则用于指定哪些状态位将被修改。通常,你可以使用宏来设置或清除某些状态,例如 LVIS_SELECTED 代表选中状态。

以下是一个简单的示例,演示如何使用 CListCtrl::SetItemState 方法来设置列表控件中项的状态:
// 假设 m_listCtrl 是你的 CListCtrl 对象

int nIndex = 0;  // 项的索引
UINT nState = LVIS_SELECTED;  // 要设置的状态
UINT nStateMask = LVIS_SELECTED;  // 指定要修改的状态位

m_listCtrl.SetItemState(nIndex, nState, nStateMask);

上述代码将列表控件中索引为 nIndex 的项的状态设置为选中状态。

你可以根据需要设置不同的状态,例如 LVIS_FOCUSED 表示焦点状态,LVIS_OVERLAYMASK 表示叠加图标等。




转载请注明出处:http://www.zyzy.cn/article/detail/18565/MFC/CListCtrl