ListView_GetItemState 函数是 Windows API 中用于获取列表视图控件(ListView)中指定项的状态信息的函数。该函数在 Commctrl.h 头文件中声明。

以下是该函数的声明:
UINT ListView_GetItemState(
  HWND hwnd,
  int  i,
  UINT mask
);

参数说明:
  •  hwnd:列表视图控件的句柄。

  •  i:要获取状态信息的列表项的索引。

  •  mask:指定所需的状态项。可以是以下常量之一或它们的组合:

  - LVIS_SELECTED:项是否被选中。
  - LVIS_FOCUSED:项是否拥有焦点。
  - LVIS_STATEIMAGEMASK:项的状态图像的掩码。
  - LVIS_OVERLAYMASK:项的叠加图像的掩码。

函数返回值:
  •  返回包含指定项状态信息的整数值。


使用示例:
#include <CommCtrl.h>

// 假设 hListView 是你的列表视图控件的句柄

int itemIndex = 2; // 要获取状态信息的列表项的索引
UINT stateMask = LVIS_SELECTED | LVIS_FOCUSED; // 想要获取的状态项

UINT state = ListView_GetItemState(hListView, itemIndex, stateMask);

// 检查项是否被选中
if (state & LVIS_SELECTED) {
    // 项被选中
}

// 检查项是否拥有焦点
if (state & LVIS_FOCUSED) {
    // 项拥有焦点
}

这个函数可以帮助你获取列表视图控件中指定项的状态信息,以便于根据需要执行相应的操作。


转载请注明出处:http://www.zyzy.cn/article/detail/24725/Win32 API/Commctrl.h/ListView_GetItemState