虚拟TreeView中可以有多个扩展节点?

我在我的Delphi项目中使用了TVirtualStringTree(虚拟TreeView组件的一部分),并且我想创建一个视图,其中2列可以包含可用[+]符号展开/折叠的子项。 在下面的图片中,我希望在服务器列中有一个[+]符号,但也在图像列中。 这个想法是树有几个服务器节点,每个节点有许多进程子进程(主要是图像),有些进程有子进程,它们是进程的子进程。

替代文字http://www.remkoweijnen.nl/temp/TreeView.png

这样的布局可能吗? 如果不是默认组件,我将不胜感激关于如何在后代实现这一点的建议。

/编辑:下面的截图是当使用方法TOndrej建议时:替代文字http://www.remkoweijnen.nl/temp/TreeView2.png替代文字http://www.remkoweijnen.nl/temp/TreeView3.png替代文字http://www.remkoweijnen.nl/temp/TreeView4.png

好的,我决定按照TOndrej的想法实施:alt text http://www.remkoweijnen.nl/temp/TreeView5.png


你很可能不需要那个。 只要自己清楚说明你需要什么样的分组。 第一列可以是多用途的 - 显示每个分组级别的不同信息 - 例如级别0:服务器,级别1:进程,级别2和更高级别:子进程。 在每个级别上,只有与该级别相关的列需要显示任何信息。 在上面的例子中,0级只会在第一列显示服务器名称; 其余的列将保持空白。

您可以通过自定义绘图来实现尽可能多的加号,但这样做很多工作,我真的认为结果是不必要的,不寻常的,容易让用户感到困惑。


只有一列可以有树,其他列可以有一个列表视图。 包含树的列是主列。

如果两列有一棵树,他们可能会“冲突”,我不知道你的分组是如何工作的。 什么是父节点等等。从技术上讲,这可能不是提供这些细节的最佳方式。 用户不会期望它以这种方式工作。

链接地址: http://www.djcxy.com/p/5959.html

上一篇: Multiple Expanding Nodes in Virtual TreeView possible?

下一篇: classes (objects) instead of records