描述
指定或接收列表视图项的属性。
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_SORTASCENDING或LVS_SORTDESCENDING样式,则不要将pszText设置为LPSTR_TEXTCALLBACK。
cchTextMax
pszText指向的缓冲区中的TCHARs数,包括终止NULL。
此成员仅在结构接收到项目属性时使用。
Note在LVN_通知期间,切勿复制超过cchTextMax TCHARs — cchTextMax,其中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_GETITEM,LVM_SETITEM,LVM_INSERTITEM和LVM_DELETEITEM.
在图块视图中,项目名称显示在图标的右侧。
Note Comctl32.dll版本6不可重新分发,但它包含在Microsoft Windows XP或更高版本中。
最低操作系统
Windows NT 3.51,Windows 95。
引用文件 #INCLUDE Once
CommCtrl.inc