java – 在SWT FileDialog中设置初始目录

前端之家收集整理的这篇文章主要介绍了java – 在SWT FileDialog中设置初始目录前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在研究 Eclipse RCP项目,需要让用户选择一些文件.
为方便起见,根据某些条件,应在打开文件之前设置文件选择对话框的初始目录.

因为我绑定了Eclipse RCP / SWT,所以我正在使用org.eclipse.swt.widgets.FileDialog.
这个FileDialog的文档指出使用setFilterPath(String string)-method,它应该完全符合我的需要(见documentation).

FileDialog dialog = new FileDialog(shell,SWT.OPEN);
   dialog.setFilterExtensions(new String [] {"*.html"});
   dialog.setFilterPath("c:\\temp");
   String result = dialog.open();

不幸的是它不起作用,至少不是“每次”.

我目前没有安装来检查它,但我很确定该功能在Windows 200 / XP / Vista机器上完全正常.
我正在使用Windows 7机器,我认为我正在遭受此处描述的lpstrInitialDir行为.

至少,这正是我所面临的行为:第一次打开对话框时路径很好,但第二次,路径最初设置为最后选择的路径.
在大多数情况下,这似乎很方便,但它不在我的手中.

这可能是对的吗?
如果是这样,我是否有机会根据我的需要改变行为?

谢谢你的帮助!

解决方法

重新打开它时是否使用相同的FileDialog对象?

我运行了一些快速测试,发现如果重新设置filterPath,对话框将在正确的位置打开.

如果我再次打开同一个对象,它将从之前选择的位置开始.

原文链接:https://www.f2er.com/java/129097.html

猜你在找的Java相关文章