自己写的。写的不是很好。希望对大家有点帮助。。。。
===============================================
先在plugin.xml中add一个org.eeclipse.ui.views。如下:
继承ViewPart实现class。
public class ViewPart1 extends ViewPart {
public static final String ID = "PopupMenuTest.view1";
private CheckboxTableViewer table;
public ViewPart1() {
}
@Override
public void createPartControl(Composite parent) {
table=CheckboxTableViewer.newCheckList(parent,SWT.NONE);
MenuManager item = new MenuManager("table","table");
item.setRemoveAllWhenShown(true);
Menu popupMenu = item.createContextMenu(table.getTable());
table.getTable().setMenu(popupMenu);
// getSite().setSelectionProvider(viewer);
getSite().registerContextMenu(item, table);
}
@Override
public void setFocus() {
}
}
当然你也可以用TableViewer代替CheckboxTableViewer,下面不用变,同样的方法实现。
到plugin.xml中添加org.eclipse.ui.popupMenus,在下面viewerContribution与一个action,注意的是targetID中填写的是你所要实现右键视图的id。
在viewerContribution下添加一个aciton,注意的是在menubarPath中填写的是你在视图类中MenuManager后面跟的参数table
这样。也就可以了。现在可以试试运行,看看效果了。