树控件图像列表

在树控件 (CTreeCtrl) 中的每个项目可以有多个副本的图像对与它。 图像在项目的标签的左侧显示。 一个图像显示,在中选择时,同时,其他显示,当项目未选中时。 例如,项目可能会显示一个打开文件夹,以便在选择和已关闭的文件夹时,如果未选择时。

若要使用 project 图像,必须创建图像构造 CImageList 对象的列表,并使用 CImageList::Create 函数生成该关联的图像列表。 使用 SetImageList 成员函数,然后添加所需的位图到列表,并将列出了与树控件。 默认情况下,所有项目显示该图像的第一个图像。选定和 nonselected 状态的列表。 通过指定选定和 nonselected 图像的索引更改特定项目的默认行为,当将项目添加到树控件使用 InsertItem 成员函数时。 使用 SetItemImage 成员函数,可以在将项目后更改索引。

树控件的图像列表还可以包含复盖图像,在项目图形是模型中列出。 在位 8 到 11 的非零值树控件项的状态指定复盖图像的从一开始的索引 (0 指示未复盖图像)。 因为,从一开始的索引,使用 4 位请复盖图像必须位于图像的前 15 个图像列表中。 有关树控件项状态的更多信息,请参见 树控件项目指定概述 本主题前面的。

如果状态图像列表中每项的图标左边指定,树控件保留空间。状态图像。 应用程序可以使用状态图像,例如后又清除的复选框,指示应用程序定义的项目状态。 在位 12 到 15 的非零值指定状态图像的从一开始的索引 (0 不指示状态图像)。

通过指定而不是图像的索引的 I_IMAGECALLBACK 值,可以延迟指定选定的或 nonselected 图像,直到该项目将重新绘制。 I_IMAGECALLBACK 处理树控件通过发送 TVN_GETDISPINFO 通知消息查询进行索引的应用程序。

GetImageList 成员函数检索树控件图形的处理列表。 ,如果需要添加更多图像添加到列表,此功能很有用。 有关图像列表的更多信息,请参见 使用 CImageList,在 MFC 中CImageList 和在 Windows SDK的 图像列表

请参见

参考

使用CTreeCtrl

概念

控件(MFC)