1

我正在使用 SWT 开发 Java 应用程序,并使用 org.eclipse.swt.widgets.FileDialog 类进行文件输入,如下所示:

FileDialog dialog = new FileDialog(shell, SWT.OPEN);
String[] filterNames = getFilterNames(importers, isWindowsLike);
String[] filterExtensions = getFilterExtensions(importers, isWindowsLike);

dialog.setFilterNames(filterNames);
dialog.setFilterExtensions(filterExtensions);
dialog.setFilterPath(lastPath);

String selectedFileAbsolutePath = dialog.open();

这工作正常,除了对话框显示隐藏文件(带有点前缀的文件),我想避免。我还没有找到解决方案。有没有办法用 SWT 做到这一点?

提前致谢

编辑:我省略的两种方法可能也很有趣。我用 Arrays.toString(String[]) 打印出方法的返回值。这是getFilterNames:

[Excel Files, CSV Files, All Files (*)]

getFilterExtensions 依次返回:

[xls;xlsx, csv, *]

在 Windows 上,每个“*”都被替换为“*.*”,正如 Eclipse 网站 ( http://git.eclipse.org/c/platform/eclipse.platform.swt.git/tree/examples ) 上的 SWT 片段所建议的那样/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet72.java)(我已经尝试使用windows版本,它仍然显示隐藏文件)

[Excel Files, CSV Files, All Files (*.*)]
[xls;xlsx, csv, *.*]
4

0 回答 0