如何使用TVirtualStringTree显示多行项目和"扩展"选择项?

sma*_*ins 2 delphi virtualtreeview

我想创建一个类似下面的图像(我知道是使用TVirtualStringTree完成的),但我还没有找到任何关于如何实现此目的的示例代码.

任何人都知道如何在下面的示例中使用多行项目,并"展开"选择项目以显示更多行?

替代文字http://img687.imageshack.us/img687/6498/vtvexample.gif

Wod*_*dzu 8

请看看VT Demos\Advenced.在那里你有一个Multiline节点演示,我想你可能正在寻找它.

演示可以在这里找到

编辑: 下载页面在这里,第三项是演示.

  • 当链接尝试直接下载某些内容时,我个人不喜欢,特别是当URL没有明确说明内容时.我添加了下载页面链接作为更坦诚的参考. (3认同)

Pet*_*ner 6

我猜你已经得到了答案,但我会给你一些暗示将它付诸实践,因为这对我来说有点不稳定.(至少在Delphi 7中)

  1. 如果你为一条新线做#13#10,确保你在#10之后有一个空位,否则你就不会换线.

  2. VirtualTree.MultiLine [node]:= true将允许多行,但不一定使其成为多行.

  3. 执行VirtualTree.InvalidateNode(Node)然后VirtualTree.Refresh树,以便在更改标题后获取节点的新大小.