2

ツリー ビューアー ファイルをダブルクリックするたびに、そのファイル名が次のフォーム ビューに表示されます。

Sample.dat -> ダブルクリック -> 名前が表示されます Sample.dat およびファイル関連のプロパティが表示されます。treeViewer ファイルを作成し、名前が表示されないファイル名をダブルクリックします。これ、eclipse rcp、Juno、e4などを登録するのを手伝ってください..

4

2 に答える 2

0

パースペクティブ クラス... private void setLayouts(IPageLayout layout) { // 範囲 0.05f から 0.95f.... IFolderLayout explorerFolderLayout = layout.createFolder("explorer", IPageLayout.LEFT, 0.25f, layout.getEditorArea());

explorerFolderLayout.addView(ExplorerView.ID);

ビュー クラス.. viewer.addDoubleClickListener(新しい 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();...

....

于 2012-11-06T05:12:34.687 に答える
0

クリックリスナーをツリーに追加する必要があります

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"));

e4以前のRCPアプリでビュー間で通信する方法がわかりませんが、ここでいくつかの有用な答えを見つけました: https://stackoverflow.com/a/2227764/1030113

于 2012-10-30T09:51:45.347 に答える