问题标签 [jtreetable]

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 投票
2 回答
6873 浏览

java - 使用 JTreeTable

我需要使用 JTreeTable,但即使搜索了几个小时,我也找不到任何关于 JtreeTable 的好教程,甚至找不到我能理解的简单代码。

如果有人可以向我推荐一个很好的教程或描述 JtreeTable 使用的简单代码,那将非常有帮助。

0 投票
1 回答
1758 浏览

java - 是否有允许可变行高的 JTreeTable 实现

我一直在寻找这个。我需要一个JTreeTable支持可变行高的。具体来说,我希望显示顶级节点的行比它们下面的子行高。

我一直在使用JXTreeTable基于原始 Sun 文章的 SwingX 实现 () 。但是,它特别不允许可变行高,如果不重写,JXTree我看不到方法。

在我开始做一些讨厌的事情之前,任何提示/指示都将不胜感激......

0 投票
2 回答
446 浏览

java - 多维数组到Java中的JTree

我想为 jtree 分配一个多维数组。我怎样才能做到这一点?

这是一个数组的示例:

根:{文件夹A:{FileA,FileB},FolderB:{FileA,FileB}} ....

我也想确定文件并为它们分配图标。

0 投票
3 回答
6374 浏览

java - 删除 Java JTree 结构的子节点

我有一个 ftp 程序,每次扩展时都会检索文件夹数据。它通过使用这样的模型来做到这一点:

// i were aded chosen.removeAllChildren(); without success ftp.GoTo(path);

ArrayList listDir = null; listDir = ftp.ListDir(); ArrayList listFiles = null; listFiles = ftp.ListFiles(); DefaultMutableTreeNode child = null , dir = null , X = null; //this will add files to tree for (int i = 0; i < listFiles.size(); i++) { child = new DefaultMutableTreeNode(listFiles.get(i)); if(listFiles.size() > 0) model.insertNodeInto(child, chosen, 0); } //this will add dirs to list for (int i = 0; i < listDir.size(); i++) { X = new DirBranch("در حال دریافت اطلاعات ...").node(); dir = new DirBranch( (String) listDir.get(i)).node(); dir.add(X); if(listDir.size() > 0) model.insertNodeInto(dir, chosen, 0); } FilesTree.setModel(model); //this is my Swing JTree }

问题是每次我展开 JTree 时它都会重复文件和文件夹列表。所以我尝试使用selected.removeAllChildren(); @代码的顶部,但它没有删除任何内容。我应该怎么办?

0 投票
1 回答
833 浏览

java - 水平扩展JTree

可能看起来有点奇怪,但是有没有办法让 JTree 的最后一个节点水平扩展而不是垂直扩展呢?我的垂直树节点代表不同的讨论主题(政治、文化等),每个节点都有一个文章对象列表。我确实需要将这些文章按发布日期排序,然后将它们水平放置在最后一个树节点中。

我希望我很清楚,非常感谢任何帮助或链接。谢谢!

0 投票
3 回答
22108 浏览

java - Java Swing 表树

当您在 Eclipse 中打开 XML 时,内容可以显示为树结构,如

XML 树视图

树“嵌入”在表格中,内容显示在单独的列中。

这将非常适合在 Swing 中复制,不是专门针对 XML 内容,而是针对具有树结构的类似数据。

更新

我刚刚了解了 JTreeTable,但我确实需要在NetNeans中执行此操作。可能应该提到这一点,对不起。

有任何想法吗?

0 投票
1 回答
2977 浏览

java - 在 JTree 的节点内创建 JTable

我知道之前有人问过这个问题,但我没有得到正确的解决方案。
我读到了大纲,但这与我想要的正好相反,即 JTree
中的 JTable 我想在 JTable 中显示数据,但它存储为不同的组,所以
当我花费一个组(节点)JTable 时,这些组是 JTree 的节点该组的显示。

我在 oracle 中浏览了这篇文章:在 Swing 中创建 TreeTables:第 1 部分

这已经很老了,不适用于我的 java 版本(我不知道为什么!),所以我
浏览了 TreeTable 的下一部分:在 Swing 中创建 TreeTables:第 2 部分

整个代码相对较新,因为它使用“javax.swing”代替
“com.sun.java.swing”,但我在这里遇到的问题是缺少一个名为
“FileSystemModel2.java”的文件,它是从以前的版本,所以我不能
使用旧版本。新的“FileSystemModel.java”中添加了一些方法。我如何通知
他们这个丢失的文件,或者如果你有不同的方法,请告诉我。

我想要达到的目标如下图所示:


实现 JTreeTable 的图像

这张图片来自“LastPass”,我想将自己的密码管理器作为我的项目
所以请帮我解决这个问题,我已经很接近了,但我不能再进一步了。

0 投票
1 回答
4156 浏览

java - JTreeTable 更新

我正在尝试使用取自http://java.sun.com/products/jfc/tsc/articles/treetable2/index.html的示例,其中我用我的模型替换了文件系统模型。

我最初创建了一个模型,将其显示在 中JTreeTable,但现在我想更新我的模型,然后是JTreeTable(例如,我想在树上添加一个节点、修改一个节点、删除一个节点等)。

我不知道我该怎么做。我看不到允许我做我想做的事情的方法,我只看到一些方法,如treeNodesChanged,treeNodesInserted等,但可能我错过了这个JTreeTable组件的全局逻辑中的一些东西。

此外,我不确定我是否正确创建了模型,因为在各种示例中,我看到人们在“模型”对象(model.insertNodeInto, model.reload)上调用各种方法,尽管我没有模型对象..在上面的示例中, 简称为AbstractTreeTableModel实现TreeTableModel.的抽象类

更新

在我的主类中,我以这种方式将对象添加到我的模型中:

然后我将模型传递给我JTreeTable并将其添加到我的框架中:

这是 JTreeTable 类:

我想要的是在添加(或修改或删除)一个孩子之后触发一个事件。

0 投票
1 回答
835 浏览

swing - JTreeTable 模型更新

我正在关注从太阳网站http://java.sun.com/products/jfc/tsc/articles/treetable2/index.html#updating_the获取的 JTreeTable filesystem2 的示例 我的问题是我无法更新我的模型(然后是我的 JTreeTable)......事实上,我创建了我的模型,我将它传递给 JTreeTable 并且一切正常......但我需要修改模型......我还没有回答类似的问题,但现在我已经更改了我的代码,但没有找到解决方案。

问题是我何时以及如何调用方法 fireTreeNodesChanged()...在上面的示例中使用方法 getPath() 来检索有关根节点的信息...但这是 File 类的方法..不是我的情况...

有没有人有一个简单代码的链接,该代码显示了如何创建 TreeTabelModel(以对象作为节点)以及如何更新它?

0 投票
2 回答
10646 浏览

java - 如何在鼠标单击时显示工具提示

我有一个JTreeTable并且已经成功实现了MouseMotionListener一个当鼠标悬停在一个单元格上时显示一个工具提示。但是,当单击单元格时,工具提示不会显示。我已经尝试了几件事,比如在mouseClickedmouseReleased事件上设置文本,但这不起作用。我找到了这段代码 -

mouseReleased方法中使用,这确实使tooltip popup,但它在错误的位置。所以接下来我尝试覆盖上的getTooltipLocation方法JTreeTable,这对事件很好,mouseMoved但不会被上述方法调用。谁能阐明如何做到这一点?

谢谢安迪