2012-11-12 71 views
0

我用C++实现了AVL树,此刻我将AVL树打印到控制台,但我需要使用GUI来表示树,作为应用程序的一部分,用户可以使用该树来与树交互。我应该研究哪些库以实现这一目标?用图形表示AVL树

注:我使用的是OS X

+1

当其仅用于调试目的时,已经将树倾倒为点图。 – PlasmaHH

+0

为了调试的目的,控制台是足够的,但我现在需要实现AVL树到一个应用程序 –

回答

0

这里的观点似乎是某种用户交互是预期的。

用户可以调用什么样的操作?移动节点,插入,删除?

你可以去graphviz方法,但如果你想有用户交互,那么对于graphviz你应该去html输出。这样你可以例如将节点与可点击链接相关联,您可以在其中放置一些操作逻辑。

如果这还不够,那么您将需要寻找一个通用的GUI框架,并查看可用的类型库。如果使用C++,Qt是需要研究的一件事。有一种叫做树状视图的东西可能适合你的问题(例如见:http://doc.qt.digia.com/qt/qtreeview.html)。

但是,要准备好需要一段时间才能进入Qt。

+0

@Samantha卡塔尼亚:你会去graphviz + HTML或Qt? – Zane

0

graphviz是一个图形可视化工具。编写graphviz文件非常简单,并使用其中一个后端来发布图像。然后,您可以使用任何您喜欢的工具包来显示这些图像。