java - Swing JTree 节点可以是哪些类型的对象?

标签 java swing user-interface miglayout

我一直在仔细关注How to Use Trees教程,解释了如何使用 Swing 的 JTree 设置来显示树。

但是,在示例中,我注意到“树对象”只是显示的简单字符串。示例:

enter image description here

我尝试看看是否可以建立一棵树来显示某人使用 [RSyntaxTextArea] 和 MigLayout 设置的小文本框(ExpressionInputBox) ,但我最终发生了以下情况:enter image description here

Bigger link to picture here.

如何才能使 ExpressionInputBox 显示为树的节点? JTree 节点的对象类型是否有限制?

最佳答案

简单地说,JTree 节点可以是任何类的对象,只要它实现 TreeNode 或 MutableTreeNode 接口(interface)即可。就是这样。您甚至可以使用实现该接口(interface)的类,只要您提供一个实现该接口(interface)的包装类即可。

现在你还问:

What can I do to have the ExpressionInputBox show up as the nodes of the tree? Is there a limitation to what kind of objects JTree nodes can be?

这是一个由两部分组成的,并且顺序错误。

  • 同样,要使对象成为可行节点,其类必须实现 TreeNode。
  • 很好地显示它(而且“好”是关键),您可能需要创建一个与其配合良好的 TreeCellRenderer。

关于java - Swing JTree 节点可以是哪些类型的对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21494321/

相关文章:

Java:如何实现 Dancing Links 算法(使用 DoublyLinkedLists)?

java - Glassfish 4 与 EMF Texo - JPA 无持久性提供程序

java - 将多个 Jtextarea 添加到同一个 JScrollPane 中

java - 如何使用多帧?

c# - CLI 和 GUI 应用程序

java - 如何将 int 数组转换为 arraylist?

java - 如何将 JButton 设置为未修饰并删除 MouseListener

java - 褪色算法?

Java JList 监听器

java - 无法从同一 Activity 更改 Fragment 内 TextView 的文本