【发布时间】:2012-11-06 15:26:53
【问题描述】:
当我双击树查看器文件时,文件名应该出现在下一个表单视图中
Sample.dat -> 双击 -> 名称应该出现 Sample.dat 和文件相关属性应该出现。 我创建了一个 treeViewer 文件并双击该名称未出现的文件名。 请帮我注册这个,eclipse rcp,Juno,e4 等。
【问题讨论】:
标签: eclipse-rcp
当我双击树查看器文件时,文件名应该出现在下一个表单视图中
Sample.dat -> 双击 -> 名称应该出现 Sample.dat 和文件相关属性应该出现。 我创建了一个 treeViewer 文件并双击该名称未出现的文件名。 请帮我注册这个,eclipse rcp,Juno,e4 等。
【问题讨论】:
标签: eclipse-rcp
透视类... 私人无效 setLayouts(IPageLayout 布局){ // 范围 0.05f 到 0.95f.... IFolderLayout explorerFolderLayout = layout.createFolder("explorer", IPageLayout.LEFT, 0.25f, layout.getEditorArea());
查看课程.. viewer.addDoubleClickListener(new IDoubleClickListener() {
@Override
public void doubleClick(DoubleClickEvent event) {
// TODO Auto-generated method stub
IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
FileName fn = null;
FileNameContainer fnc = null;
if (selection.isEmpty())
return;
List<Object> list = selection.toList();...
....
【讨论】:
您需要在树中添加点击监听器
final Tree tree = new Tree(parent, SWT.BORDER);
tree.addMouseListener(new MouseListener(){
public void mouseDoubleClick(MouseEvent e) {
//get data of selected element
//we use array[0], because we have not multiselect tree
MyDataObject data = (MyDataObject) tree.getSelection()[0].getData();
//now you need to pass "data" to your view with file info
//I don't know how to do it in pre e4 RCP apps, so
//please read this answer: https://stackoverflow.com/a/2227764/1030113
//hope that helps
}
public void mouseDown(MouseEvent e) {}
public void mouseUp(MouseEvent e) {}
});
//to test
TreeItem treeItem1 = new TreeItem(tree, SWT.NONE);
treeItem1.setText("some item 1");
treeItem1.setData(new MyDataObject("somedata 1"));
TreeItem treeItem2 = new TreeItem(tree, SWT.NONE);
treeItem2.setText("some item 2");
treeItem2.setData(new MyDataObject("somedata 2"));
我不知道如何在 pre e4 RCP 应用程序中的视图之间进行通信,但我在这里找到了一些有用的答案:https://stackoverflow.com/a/2227764/1030113
【讨论】: