你好 stackoverflow 社区,
我有以下问题。假设我有一棵树,其中每个节点都有可变数量的子节点(其中叶子当然有 0 个子节点,其他节点有 1 个子节点,基本上是无限子节点)。我想使用 SWT 绘制这棵树。我一般不想知道如何用 SWT 进行绘制,而是如何确定在哪里绘制每个节点。我最想要的是父节点以子节点为中心,并且在兄弟节点之间有足够的空间,这样他们的子节点就不会相互碰撞。我的大脑不会想出一个算法来确定位置。我希望这里有人可以提供帮助。
提前致谢!干杯,帕特里克
您可以进行广度优先搜索。在每个级别上,学习该级别中节点的数量,然后进行计算并绘制它们,然后移动到树上的下一个级别,依此类推。
我想按照以下步骤找出绘制树的界限。
org.eclipse.swt.widgets.Layout
并计算每个级别的节点边界想想任何操作系统中的文件树。它的确切情况。看看http://www.apl.jhu.edu/~hall/java/Swing-Tutorial/Swing-Tutorial-JTree.html看看如何实现一个!不确定您是在寻找如何实现它还是自己绘制它,但我不建议您自己绘制它。