使用树状视图控件

本节包含使用树形视图控件的实施详细信息和示例代码。

本节内容

主题 说明
如何创建树状视图控件
要创建树形视图控件,请使用 CreateWindowEx 函数,并为窗口类指定 WC_TREEVIEW 值。 在加载通用控制 DLL 时,树形视图窗口类会在应用程序的地址空间中注册。 要确保 DLL 已加载,请使用 InitCommonControls 函数。
如何初始化映像列表
树形视图控件中的每个项目都可以有两个与之相关的图像。 一个项目被选中时会显示一个图像,未被选中时会显示另一个图像。 要在树形视图项目中包含图像,首先要使用 Image Lists 函数来创建图像列表并添加图像。 然后使用 TVM_SETIMAGELIST 消息将图像列表与树形视图控件关联起来。
如何添加树状视图项目
通过向树形视图控件发送 TVM_INSERTITEM 消息,可以将项添加到该控件。 消息包括 TVINSERTSTRUCT 结构的地址,用于指定父项,即插入新项后的项,以及定义项属性的 TVITEM 结构。 这些属性包括项的标签、其选定图像和非选定图像,以及 32 位应用程序定义的值。
如何拖动树状视图项目
本主题演示了处理拖放树形视图项目的代码。 示例代码由三个函数组成。 第一个函数开始拖动操作,第二个函数拖动图像,第三个函数结束拖动操作。
如何使用状态映像索引
在树形视图控件中,如何设置和检索状态图像索引经常会引起混淆。 以下示例演示了设置和检索状态图像索引的正确方法。 这些示例假定树形视图控件中只有两个状态图像索引,即未选中和选中。 如果应用程序包含两个以上的函数,则需要修改这些函数才能处理这种情况。
如何使用树状视图信息提示
TVS_INFOTIP 样式应用于树形视图控件时,当光标停留在树形视图中的某个项目上时,就会生成 TVN_GETINFOTIP 通知。 通过响应此通知,可以设置信息提示中出现的文本。