在 Win32 API 的 Commctrl.h 头文件中,LITEM 结构通常用于 List-View 控件(列表视图控件)。以下是 LITEM 结构的定义:
typedef struct tagLITEM {
  UINT   mask;
  int    iItem;
  UINT   state;
  UINT   stateMask;
  LPWSTR pszText;
  int    cchTextMax;
  int    iImage;
  LPARAM lParam;
  int    iIndent;
  int    iGroupId;
  UINT   cColumns;
  PUINT  puColumns;
} LITEM, *PLITEM;

结构成员包括:

1. mask: 一个标志掩码,指定结构中哪些成员包含有效数据。可以是以下常量之一或它们的组合:
   - LVIF_TEXT: pszText 字段包含有效数据。
   - LVIF_IMAGE: iImage 字段包含有效数据。
   - LVIF_PARAM: lParam 字段包含有效数据。
   - LVIF_STATE: state 和 stateMask 字段包含有效数据。
   - LVIF_INDENT: iIndent 字段包含有效数据。
   - LVIF_GROUPID: iGroupId 字段包含有效数据。
   - LVIF_COLUMNS: cColumns 和 puColumns 字段包含有效数据。

2. iItem: 项目的索引。

3. state: 项目的状态。

4. stateMask: 状态位的掩码。

5. pszText: 指向包含项目文本的 Unicode 字符串的指针。

6. cchTextMax: pszText 缓冲区的大小,以字符为单位。

7. iImage: 项目的图像索引。

8. lParam: 应用程序定义的 32 位值,与项目关联。

9. iIndent: 项目的缩进级别。

10. iGroupId: 项目所属的组的标识符。

11. cColumns: 与项目关联的列数。

12. puColumns: 一个指向包含与项目关联的列索引的数组的指针。

这个结构通常用于在 List-View 控件中插入或检索项的信息,具体使用方式可能涉及到 List-View 控件的消息处理。如果您正在使用 List-View 控件,建议查阅相应的文档以获取详细信息。


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