0

我正在使用TreeViewerfor 目录浏览来做我的第一个 RCP 示例。

我的工作确实从示例http://www.ibm.com/developerworks/opensource/library/os-ecgui1/开始

对于TreeViewer文件条目,我想让最后一个选择保持不变,以便下次通过相同的选择打开查看器。

从选定的文件中,我捕获了路径并存储/检索这个单个字符串。

重新打开时,我遍历ITreeContentProvider并找到相应的 File 节点(并捕获其间的节点)。

接下来我使用

window.getTree().setSelection(new StructuredSelection(target));

将目标作为保存路径的文件列表。

这适用于 C 下的顶级目录:

但是恢复更深的路径失败了。下一个级别最初没有扩展并且在AbstractTreeViewer.setSelectionToWidget().

我的感觉是我没有setSelection()很好地处理参数但我没有找到合适的例子。

你有一个简单的例子给我展示如何恢复这样的路径选择吗?

提前致谢

沃尔夫冈·R。

4

1 回答 1

1

我已经找到了。使用的示例代码有一个小错误。

public class FileTreeContentProvider implements ITreeContentProvider
{
...
public Object getParent(Object element)
{
  // wrong return ((File)element).getParent();
  return ((File)element).getParentFile();
}
于 2013-05-15T12:28:49.887 回答