1

如何在项目上添加鼠标右键单击侦听器TableViewer

4

2 回答 2

5

如果您指的是 JFace TableViewer,则可以使用以下方法,假设viewer是您的TableViewer.

MenuManager manager = new MenuManager();
viewer.getControl().setMenu(manager.createContextMenu(viewer.getControl()));

manager.add(new Action("MENU ITEM TEXT", ImageDescriptor.createFromImage(YOUR_IMAGE)) {
    @Override
    public void run() {
        // get the current selection of the tableviewer
        IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
        // do something
    }
});

否则,请澄清您的问题。

于 2012-10-12T08:00:22.123 回答
2

您可以获取 TableViewer 的表格并调用

public void addMouseListener (MouseListener listener)

MouseEvent将告诉您按下了哪个鼠标按钮

/**
 * the button that was pressed or released; 1 for the
 * first button, 2 for the second button, and 3 for the
 * third button, etc.
 */
public int button;
于 2012-10-12T08:08:46.040 回答