首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JTree实时更新?

JTree实时更新?
EN

Stack Overflow用户
提问于 2009-09-17 17:57:28
回答 5查看 5.9K关注 0票数 1

我正在寻找一个线程解决方案来每秒钟更新我的JTree。

基本上我..。

  • 导入外部文件
  • ,创建
  • 的枚举,在枚举

的基础上构建树

外部文件可以随意更改,树中的数据需要以某种合理的时间方式表示此更改。在不重新绘制JTree (通过面板)的整个内容窗格的情况下,我如何能够重新绘制树呢?

谢谢!

EN

回答 5

Stack Overflow用户

发布于 2009-09-17 18:46:12

只要让JTree的模型启动一个更新,JTree就会重新绘制自己。最简单的方法是使用DefaultTreeModel,当文件更改时,从您的文件构造TreeNodes (可能使用DefaultMutableTreeNode),并使用新创建的节点树的基节点在模型上调用setRoot()。

票数 4
EN

Stack Overflow用户

发布于 2009-11-03 22:57:33

我想您可能在其他地方读过这样的文章: Swing不是线程保存;)如果您想要从不同的线程更新Swing组件,那么必须让其他线程将它的更新推到Swing的事件线程上。这样做的方法是EventQueue.invokeAndWait(Runnable)。

下面是一个类似问题的代码示例(与目录树同步JTree ):http://www.onyxbits.de/content/java-and-directory-trees-joy-implementing-simple-filemanager

您应该对FileMonitor.java文件感兴趣。

票数 1
EN

Stack Overflow用户

发布于 2011-09-20 23:24:00

如果您的树使用DefalultTreeModel,请试一试

代码语言:javascript
复制
((DefaultTreeModel)yourTree.getModel()).reload();
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1440382

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档