词条 | TVITEM |
释义 | TVITEM 该结构体根据消息类型,用来发送或接收关于一个树型视图的项目的有关信息。与TV_ITEM 一样 typedef struct tagTVITEM{ UINT mask; HTREEITEM hItem; UINT state; UINT stateMask; LPTSTR pszText; int cchTextMax; int iImage; int iSelectedImage; int cChildren; LPARAM lParam;} TVITEM, FAR *LPTVITEM; 成员说明 mask 用来指定TV_ITEM的那些成员变量有效。譬如,如果指定了TVIF_TEXT,这意味着pszText成员变量是有效的。您可以同时指定几个标志位。 TVIF_CHILDRENcChildren 成员有效 TVIF_DI_SETITEM树形视控件将保留支持信息并且不重新请求它。当处理TVN_GETDISPINF通知时,这个标记是有效的。 TVIF_HANDLEhItem 成员有效. TVIF_IMAGEiImage成员有效. TVIF_PARAMlParam成员有效. TVIF_SELECTEDIMAGEiSelectedImage成员有效. TVIF_STATEstate和stateMask成员有效. TVIF_TEXTpszText和cchTextMax成员有效.hItem 这个函数引用的项。 state 位标记和图像列表索引的设置,指出项的状态。当设置了一个项的状态,stateMask成员指出这个成员的位是有效的。当取加一个项的状态时,这个成员返回stateMask成员指出的位的当前状态。 这个成员的0至7位包含了项的状态标记。关于可能的项状态标记,参见Tree View Control Item States. 覆盖图像覆盖在项的图标图像之上。这个成员的8至11位指定了以1为基准的覆盖图像索引。如果这些位是0,这个项没有覆盖图像。要隔离这些位,使用TVIS_OVERLAYMASK掩码。要在这个成员中设置覆盖图像索引,使用INDEXTOOVERLAYMASK宏。图像列表的覆盖图像是被ImageList_SetOverlayImage函数设置的。一个状态图像是仅次于指出应用程序定义的状态的项的图标显示的。通过发送TVM_SETIMAGELIST消息来指定一个状态图像列表。要设置一个项的状态图像,在TVITEM结构的stateMask成员中包含TVIS_STATEIMAGEMASK值。结构的state成员的12至15位指定状态图像列表中被绘制图像的索引。要设置状态图像索引,使用INDEXTOSTATEIMAGEMASK。这个宏把一个索引适当的设置到12至15位上。要指出项没有状态图像,设置索引为0。这意味着在状态图像列表中的图像0不能被作为一个状态图像使用。要隔离state成员的位12至15,使用TVIS_STATEIMAGEMASK掩码。 stateMask state成员的位是有效的。如果你取回了一个项的状态,设置stateMask成员的位来指出state成员中的这个位被返回。如果你设置了一个项的状态,设置stateMask成员的位来指出state成员的这个位是你想设置的。要设置或取回一个项的覆盖图像的索引,设置TVIS_OVERLAYMASK位。要设置和取回一个项的状态图像索引,设置TVIS_STATEIMAGEMASK位。 pszText 如果这个结构指定了项属性,那么这个成员是指向一个以空字符结束的字符串,包含有项的文本。如果这个成员是值LPSTR_TEXTCALLBACK,那么父窗口为保存名字负责。既然这样,当树形视控件需要显示、保存或编辑项文本时,向父窗口发送TVN_GETDISPINFO通过消息,当项文本改变时,发送TVN_SETDISPINFO通知消息。 如果结构是取回项的属性,这个成员是取回项文本缓冲的地址。 cchTextMax pszText成员指定缓冲的大小,以字符为单位。如果这个结构被使用来设置项属性,这个成员被忽略。 iImage 当项是在非选择状态中时,是树形控件的图像列表的索引。 如果这个成员是值I_IMAGECALLBACK,父窗口为保存索引负责。既然这样,当树形视控件需要显示这个图像时,向父窗口发送TVN_GETDISPINFO通知消息来获得索引。 iSelectedImage 当项被选择时,是树形控件图像列表的索引。 如果这个成员是值I_IMAGECALLBACK,父窗口为保存索引负责。既然这样,当树形视控件需要显示这个图像时,向父窗口发送TVN_GETDISPINFO通知消息来获得索引。 cChildren 标记指出哪一个项有关联的子项。这个成员可以是下列值之一。 zero这个项没有子项。 one这个项有一个或更多的子项。 I_CHILDRENCALLBACK用以记录父窗口项目是否有子项目,在这种情况下,树形控件需要显示项目时,控件会传送TVN_GETDISPINFO消息用以确认项目是否有子项目。如果树形控件有TVS_HASBUTTONS样式,它使用该成员来决定是否显示有子项目的按钮,可以通过这个成员来强迫显示有子项目的按钮,不论是否有子项目。lParam 与这项相关的32位值。 需要 Windows NT/2000:需要Windows NT 3.51或更高版本。 Windows 95/98:需要Windows 95或更高版本。 Header:定义在commctrl.h。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。