加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

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

发布时间:2020-12-15 03:11:57 所属栏目:Java 来源:网络整理
导读:我正在研究 Eclipse RCP项目,需要让用户选择一些文件. 为方便起见,根据某些条件,应在打开文件之前设置文件选择对话框的初始目录. 因为我绑定了Eclipse RCP / SWT,所以我正在使用org.eclipse.swt.widgets.FileDialog. 这个FileDialog的文档指出使用setFilterP
我正在研究 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,对话框将在正确的位置打开.

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读