【问题标题】:How to display tree hierarchy in Java?如何在 Java 中显示树的层次结构?
【发布时间】:2011-01-07 06:31:35
【问题描述】:

我在名为“Process”的数据库中有一个表

这个进程表有3个字段:

  • process_id
  • 进程名称
  • process_parent_id

现在我想以图形格式显示这个父子层次结构。那么您能否建议我以下内容:

第一季度。使用哪种数据结构更好地从数据库中获取数据并存储在该数据结构中?

第二季度。如何以图形格式显示该树(流程层次结构)?


编辑:

我想要这样的图形格式:

【问题讨论】:

  • 这个明显的问题是最好把这样的东西放在滚动窗格中,无论是水平的还是垂直的。否则,该图可能会在两个方向上大幅扩展,并且没有一个好的方法来处理它。因此,JTree 不是一个坏选择。

标签: java user-interface swing tree graphic


【解决方案1】:

Swing 有一个内置控件,用于以树格式显示数据,称为JTree。它还提供了一个名为DefaultTreeModel 的数据模型,您可以使用它来存储数据。 This link 很好地解释了将 JTree 与数据模型一起使用。

[编辑]:

为了回答您更新的问题,JGraph 可以很好地处理这样的图表,这也将提供似乎与摇摆提供的树模型类似的数据模型。

【讨论】:

    【解决方案2】:

    关于 Q1:您可以在 Internet 资源上找到树结构的几个 Java 实现,例如 this generic tree

    关于 Q2:另一种选择是 using JTree。查看How to use Trees 上的 Java 教程跟踪

    JGraphT 可能是构建类似您的示例的良好起点。在http://jgrapht.sourceforge.net/visualizations.html查看演示

    【讨论】:

      【解决方案3】:

      正如其他人所建议的,使用JTree 是一种可能的解决方案。但是,如果您希望更好地控制树的外观,我建议您查看JUNG 图形库。这可能会给你带来很好的结果,但需要更多的工作。

      【讨论】:

        【解决方案4】:

        对于图形格式的层次结构,JTree 呢? http://java.sun.com/docs/books/tutorial/uiswing/components/tree.html

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-09-19
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-07-15
          相关资源
          最近更新 更多