我正试图创建一个类似于以下示例的
TVirtualStringTree
视图:
在上面的示例中,我展示了我想要实现的一些可能情况。 FolderA 文本加粗,并在同一节点后面有红色的非加粗文本。我正在寻找制作这种格式输出的方式。
但如果这太难或太麻烦了,我将满足于 FolderB 或 FolderC 类型的输出——这可能可以用两列来实现,一列包含文件夹名称,另一列包含文件数目。
FolderD 只是一个没有文件的文件夹示例,其输出(文本未加粗且没有数字)如上所示。
我正在寻找任何制作此效果的方向,因为 VirtualTreeView 每个节点只能设置单一颜色或加粗设置。任何关于如何朝着 FolderA 、FolderB 或 FolderC 的方向移动的提示或建议都会非常感激,这样我就有了一个起点。Delphi 或 C++ Builder 示例都可以(最终代码将在 C++ Builder 中编写)。
OnMeasureTextWidth
事件来提供整个文本的宽度,并在OnDrawText
事件处理程序中呈现两个文本。但我个人会使用2列,这将允许用户始终看到计数。 - TLamaOnPaintText
和在两列的情况下切换Column
会更加复杂。 - TLama