问题标签 [treemodel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
402 浏览

java - 使用 Java 7 的 NIO 的文件系统 JTree

我已经看到很多使用标准 Java APIJTrees显示文件系统的示例。File是否有TreeModel使用来自 Java 7 的新 NIO api 的 JTree 的示例实现(可能使用自定义)?我很想看到一个演示正确使用的示例:

  1. WatchServices当文件系统被另一个程序或用户修改时更新 JTree
  2. FileVisitors获取节点的内容
  3. 在操作需要很长时间的情况下异步加载树节点内容
0 投票
1 回答
397 浏览

java - 为什么 JTree 处理来自 DefaultTreeModel 而不是 TreeModel 的事件?

我注意到在 jTree 中调用和定义的 jTree.treeModelHandler 为 treeNodesChanged 和 treeNodesInserted 事件实现了空白方法。DefaultTreeModel 触发一个 treeNodesInserted 事件 & jTree 更新自己。但是,当我从 TreeModel 触发相同的事件时,什么也没有发生。

当它没有实现任何明显的方法时,我无法弄清楚树如何从 DefaultTreeModel 更新。

我在这里想念什么?

更新:解决方法 org.jdesktop.swingx.tree.TreeModelSupport。很棒的套件!添加为我的 TreeModel 接口对象的字段。然后将所有触发和 treeModelListener 方法委托给它。使用 JTree 比使用 DefaultTreeModel 效果更好,甚至使用 JXTree 效果更好。我只实现了单数选择/插入/删除,但到目前为止,树在所有测试中都表现正确。

0 投票
2 回答
1697 浏览

swing - JTree自定义模型添加/删除/更改节点

我遇到了这样的麻烦。我有一个覆盖数据库结构并使用 JTree 来显示项目。这是我对模型的简化视图:

当我从ml或其内部项目中删除某些内容时,树结构不会改变。我找不到像fireTreeModelChanged这样的方法。

0 投票
1 回答
1038 浏览

java - 如何获取 JTree 根节点的文件系统路径?

我在下面的代码中注意到

问题是root值是“root”而不是文件系统上文件的路径。

我期望的是像“C:\”或“D:\”这样的东西,具体取决于树。

有人遇到这个问题吗?

0 投票
1 回答
172 浏览

python - 如何在 Python 中更改或查看 gtk.ListStore 标志

我有一个与 ListStore 对象连接的 TreeView。其中一个函数调用 ListStore.get_iter_next()。由于 ListStore 数据每次都会更改,因此我怀疑 iter 是否会导致内存泄漏。

我需要检查 ListStore 是否设置了 gtk.TREE_MODEL_ITERS_PERSIST 标志并按照TreeModel.get_flags()文档中的说明取消设置。

我怎么能那样做?

0 投票
2 回答
394 浏览

c++ - 如何让 Qt Tree 模型与 QSet 一起工作?

我想用添加、重命名和执行其他操作时始终在树节点下自动排序的项目构建一棵树。std::set 似乎是我的数据容器的不错选择。然而,Qt 树似乎更喜欢向量或 QList(指针向量),因为树项是通过它们的索引或行号来访问、插入或删除的。我正在使用类似 std::distance 的函数来计算集合中某个项目的索引。但我认为它很慢(未经测试)。让 Qt 树模型与 std::set 一起工作的任何好方法,或者我可能需要为我的数据使用向量,或者开发一个新容器来做到这一点?非常感谢!

找到答案:使用boost::container::flat_set。谢谢。

0 投票
1 回答
311 浏览

c++ - Qt 可以使用哪个函数在树视图中选择一个项目?

Qt 可以使用哪个函数在树视图(或模型)中选择一个项目?我什至不知道该功能是在树视图还是模型中。怎么做?像 select(const QModelIndex & index) 这样的函数吗?谢谢。

0 投票
1 回答
737 浏览

c++ - 如何让 Qt 快速导航树项目?

我在一个节点下开发了一个包含 1,000,000 个项目的 Qt 树。该代码类似于http://qt-project.org/doc/qt-5.0/qtwidgets/itemviews-simpletreemodel.html上的简单树模型示例。

当我单击“结束”键时,需要 15 秒才能转到最后一项。有什么办法让它更快?

0 投票
1 回答
687 浏览

java - 如何构建包含文件和子目录的可序列化 TreeModel?

我正在尝试TreeModel为 Java 应用程序构建一个。由于我需要对其进行序列化并通过 发送它ObjectOutputStream,因此我正在尝试使用 ,DefaultTreeModel因为它实现了Serializable接口。

好吧,我想我没问题。

我的问题是:现在,如何构建一个DefaultTreeModel包含目录(作为参数传递,DefaultMutableTreeNode我猜是?)及其所有文件和子目录?

我用 a 实现了这一点,JTree但它似乎不是可序列化的,所以现在我被卡住了,因为我无法理解文档示例。

0 投票
2 回答
728 浏览

java - 滚动时 JTree 严重模糊

我有一个JTree内部 a JScrollPane,当我使用滚动条时,树会变得模糊,如下图所示。

如果我做一些事情来重新绘制它,它会恢复正常,比如最小化和恢复窗口,或者在树中单击以使节点展开或折叠(但是如果我将窗口拖离屏幕,模糊不会消失并返回,或将另一个窗口拖到它前面)。

JTree 有一个自定义TreeModel和单元格渲染器。最近的变化是针对TreeModel; 单元格渲染器已经存在了很长时间并且工作正常。单元格渲染器是 的子类DefaultTreeCellRenderer,只有getTreeCellRendererComponent方法被覆盖(以显示自定义图标)。

DefaultMutableTreeNode我曾经从包含要显示的数据的数据结构中填充s,但是当节点数量很大(比如超过 10,000 个)时,这会导致性能问题。DefaultMutableTreeNode由于我拥有的数据已经在树结构中,我意识到在不使用任何s 的情况下围绕它创建自定义 TreeModel 会相当简单。这使得 JTree 填充得更快,但现在我留下了这个模糊的滚动问题。

模糊的 JTree

下面的代码不是来自应用程序,但它按原样编译并将演示问题。删除tree.setBackground线停止模糊行为。