导航:  Windows Controls Wrapper Functions > List View Control > Structures >

LVITEM

上一页返回章节概述下一页

描述

 

指定或接收列表视图项的属性。

 

C/C++ 语法

 

typedef struct _LVITEM {

UINT mask;

int iItem;

int iSubItem;

UINT state;

UINT stateMask;

LPTSTR pszText;

int cchTextMax;

int iImage;

LPARAM lParam;

#if (_WIN32_IE >= 0x0300)

int iIndent;

#endif

#if (_WIN32_WINNT >= 0x560)

int iGroupId;

UINT cColumns; // tile view columns

PUINT puColumns;

#endif

#if (_WIN32_WINNT >= 0x0600)

int* piColFmt;

int iGroup;

#endif

} LVITEM, *LPLVITEM;

 

PB语法

 

TYPE LVITEMA

mask       AS DWORD

iItem      AS LONG

iSubItem   AS LONG

state      AS DWORD

stateMask  AS DWORD

pszText    AS ASCIIZ PTR

cchTextMax AS LONG

iImage     AS LONG

lParam     AS LONG

iIndent    AS LONG

iGroupId   AS LONG

cColumns   AS DWORD

puColumns  AS DWORD PTR

END TYPE

 

TYPE LVITEMA_V6

mask       AS DWORD

iItem      AS LONG

iSubItem   AS LONG

state      AS DWORD

stateMask  AS DWORD

pszText    AS ASCIIZ PTR

cchTextMax AS LONG

iImage     AS LONG

lParam     AS LONG

iIndent    AS LONG

iGroupId   AS LONG

cColumns   AS DWORD

puColumns  AS DWORD PTR

piColFmt   AS LONG PTR

iGroup     AS LONG

END TYPE

 

Unicode版本:

 

TYPE LVITEMW

mask       AS DWORD

iItem      AS LONG

iSubItem   AS LONG

state      AS DWORD

stateMask  AS DWORD

pszText    AS WSTRINGZ PTR

cchTextMax AS LONG

iImage     AS LONG

lParam     AS LONG

iIndent    AS LONG

iGroupId   AS LONG

cColumns   AS DWORD

puColumns  AS DWORD PTR

END TYPE

 

TYPE LVITEMW_V6

mask       AS DWORD

iItem      AS LONG

iSubItem   AS LONG

state      AS DWORD

stateMask  AS DWORD

pszText    AS WSTRINGZ PTR

cchTextMax AS LONG

iImage     AS LONG

lParam     AS LONG

iIndent    AS LONG

iGroupId   AS LONG

cColumns   AS DWORD

puColumns  AS DWORD PTR

piColFmt   AS LONG PTR

iGroup     AS LONG

END TYPE

 

成员

 

mask

 

一组标志,指定此结构的哪些成员包含要设置的数据或正在请求哪些成员。

 

LVIF_COLFMT

Microsoft Windows Vista及更高版本.

LVIF_COLUMNS

Windows XP及更高版本.cColumns成员有效或必须设置。

LVIF_DI_SETITEM

操作系统应存储所请求的列表项信息,而不再请求。

LVIF_GROUPID

Windows XP及更高版本.

LVIF_IMAGE

iImage成员有效或必须设置。

LVIF_INDENT

iIndent成员有效或必须设置。

LVIF_NORECOMPUTE

如果接收到LVM_GETITEM消息,控件将不会生成LVN_GETDISPINFO检索文本信息。

LVIF_PARAM

lParam成员有效或必须设置。

LVIF_STATE

state成员有效或必须设置。

LVIF_TEXT

pszText成员有效或必须设置。

 

iItem

 

该结构所涉及项目的零基索引。

 

iSubItem

 

该结构引用的子项的基于一个索引,如果此结构指的是项,而不是子项,则为零。

 

state

 

表示项目的状态,状态图像和叠加图像。

 

该成员的位0到7包含项状态标志。

 

该成员的第8位到第11位指定了基于一个的覆盖图像索引。

 

该成员的位12到15指定状态图像索引。

 

stateMask

 

指定state成员的哪些位将被检索或修改的值。

 

该成员允许您修改一个或多个项目状态,而无需首先检索所有项目状态。

 

要检索或修改所有状态,请将此成员设置为(UINT) - 1。

 

您可以使用宏ListView_SetItemState来设置和清除位。

 

pszText

 

如果结构指定项目属性,pszText是指向包含项目文本的以空值终止的字符串的指针。

 

如果结构接收到项目属性,pszText是一个指向接收项目文本的缓冲区的指针。

 

如果pszText的值为LPSTR_TEXTCALLBACK,则该项为回调项。

 

如果列表视图控件具有LVS_SORTASCENDINGLVS_SORTDESCENDING样式,则不要将pszText设置为LPSTR_TEXTCALLBACK。

 

cchTextMax

 

pszText指向的缓冲区中的TCHARs数,包括终止NULL。

 

此成员仅在结构接收到项目属性时使用。

 

Note在LVN_通知期间,切勿复制超过cchTextMax TCHARscchTextMax,其中cchTextMax包含终止NULL —到pszText,否则您的程序可能会失败。

 

iImage

 

控件图像列表中项目图标的索引。

 

lParam

 

项目特有的价值。

 

iIndent

 

版本4.70.

 

iGroupId

 

版本6.0项目所属组的标识符,或以下值之一。

 

I_GROUPIDCALLBACK

listview控件发送一个LVN_GETDISPINFO通知消息来检索该组的索引。

I_GROUPIDNONE

该项目不属于一个组。

 

cColumns

 

版本6.0在图块视图中显示此项目的数据列数(子项)数。

 

puColumns

 

版本6.0指向列索引数组的指针,指定为此项目显示哪些列以及这些列的顺序。

 

piColFmt

 

Windows Vista指向以下标志(单独或组合)的数组的指针,指定扩展平铺视图中每个子项的格式。

 

LVCFMT_LINE_BREAK

强制列包装到下一列列的顶部。

LVCFMT_FILL

填补瓷砖区域的剩余部分。

LVCFMT_WRAP

允许列包含在其列表列表中的剩余空间中。

LVCFMT_NO_TITLE

从子项中删除标题。

LVCFMT_TILE_PLACEMENTMASK

相当于LVCFMT_LINE_BREAK和LVCFMT_FILL的组合。

iGroup

 

Windows Vista项目的组索引。

 

备注

 

LVITEM结构与多个消息一起使用,包括LVM_GETITEMLVM_SETITEMLVM_INSERTITEMLVM_DELETEITEM.

 

在图块视图中,项目名称显示在图标的右侧。

 

Note Comctl32.dll版本6不可重新分发,但它包含在Microsoft Windows XP或更高版本中。

 

最低操作系统

 

Windows NT 3.51,Windows 95。

 

引用文件 #INCLUDE Once

 

CommCtrl.inc