【问题标题】:FileChooserBuilder in Netbeans Platform app missing?Netbeans 平台应用程序中的 FileChooserBuilder 丢失?
【发布时间】:2017-07-24 09:58:42
【问题描述】:

在我之前的一个 Netbeans Platform 应用程序中,我使用此代码打开了一个保存对话框

File home = new File(System.getProperty("user.dir"));

XMLfile = new org.openide.filesystems.FileChooserBuilder("_output")
                                         .setTitle("Save Dictionary")
                                         .setDefaultWorkingDirectory(home)
                                         .setApproveText("Save")
                                         .setFileFilter(new FileNameExtensionFilter("xml files (*.xml)", "xml"))
                                         .setAcceptAllFileFilterUsed(true)
                                         .showSaveDialog();

由于某种原因,在我当前的 Netbeans 平台应用程序中,Netbeans IDE 找不到 org.openide.filesystems.FileChooserBuilder (javadoc)。我的模块声明了对File System API 的依赖,据我所知,它“导入”了命名空间org.openide.filesystems

我找不到任何 FileChooserBuilder 已被弃用的信息,我也没有找到替代建议。

Netbeans IDE 建议改用javafx.stage.FileChooser,但我在使用new javafx.stage.FileChooser.FileChooser().showSaveDialog(Window ownerWindow) 时遇到了麻烦,因为我不知道如何从我的TopComponent 获取Window。如果我通过null,则会引发异常(IllegalStateException: This operation is permitted on the event thread only; currentThread = AWT-EventQueue-0),可能是因为null 会导致非模态对话框。

那么org.openide.filesystems.FileChooserBuilder消失在哪里,或者我的错误在哪里?

【问题讨论】:

  • 您在项目中添加了org.openide.filesystems JAR 库吗?
  • 是的,至少据我所知。通过在模块的属性中添加对File System API的依赖,应该添加相应的jar文件。

标签: java netbeans-platform


【解决方案1】:

由于某种原因,它再次起作用。我已经删除了对File System API 的依赖,在这个项目上工作了几天,然后又添加了它。也许我已经清除了 Netbeans 缓存(在 %localappdata% 中)和所有模块的 /build 目录。不确定是什么解决了问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-31
    • 2012-06-27
    • 1970-01-01
    • 2013-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多