1

我在File Browser Gui中阅读教程,但如果 strucutre 文件夹更改,程序无法动态重新加载,如何在 File Browser GUI 中创建刷新/重新加载功能?
这是我不完整的代码

refreshPath = new JButton("Refresh");
refreshPath.addActionListener(new ActionListener(){
     public void actionPerformed(ActionEvent ae) {
        ....
     }
});
toolBar.add(refreshPath);
4

1 回答 1

3
  • FileIO也是 Java 和 Native OS 的低级和硬事件

  • 基本上有两种方式

    a)观看 Java7 更改目录,此处讨论。

    b)使用一些自定义FileIO Watching(我不能建议什么更好或不更好,也许FileWatcher by Apache

  • 在这两种情况下都不会通知 Swing GUI,必须通过使用SwingWorker或通知Runnable#Thread

  • 通过使用Runnable#Threadins't there 保证输出将被通知Event Dispatch Thread,将输出包装到 Swing GUI 到invokeLater()

  • SwingWorker保证,但为了更安全的输出,你也可以使用invokeLater(),我们谈论的是第四个。此外,短代码行

于 2012-08-10T07:27:43.063 回答