我正在使用this code对列表视图中的项目进行分组。但是我想要的是,组标题的图像大小将保持“16x16”,而组内的项目的图像将具有不同的大小,例如50×50。使用图像对列表视图中的项目进行分组
如何为Delphi 7做到这一点?
我正在使用this code对列表视图中的项目进行分组。但是我想要的是,组标题的图像大小将保持“16x16”,而组内的项目的图像将具有不同的大小,例如50×50。使用图像对列表视图中的项目进行分组
如何为Delphi 7做到这一点?
的制品代码仅通过操纵正常列表项模拟团,使组标题的图像和项图像利用相同TListItem.ImageIndex
属性,因此将访问相同的图像列表,因此它们必须使用相同尺寸的图像。
标准Win32 ListView控件支持为组标题和列表项目使用不同的图像列表(仅限Vista +)。
我会建议放弃物品代码,并可以:
直接使用Win32 API使ListView的native grouping features。仅仅因为Delphi 7的TListView
组件本身不支持分组API,并不妨碍您手动使用它。您可能必须在代码中手动定义相关的记录类型和消息ID,就这些了。
切换到SoftGem's Virtual TreeView(它确实支持Delphi 7)以创建带有可展开/可折叠项目的柱状视图。单独的树节点可以有不同的高度,并且它们可以是所有者绘制的,所以我认为为组和项目显示不同大小的图像并不困难。