访问TableViewer的DoubleCLickListener中的行数据

时间:2014-02-23 14:39:05

标签: eclipse eclipse-plugin tableview actionlistener double-click

我需要显示一些与TableViewer表中单击的行或单元格相关的信息。

据我所知,我可以在 viewer.addDoubleClickListener()中使用(TableViewer)event.getViewer()来检索被点击的当前行或单元格的数据。如果我错了,请纠正我。

但我的 run()功能位于 private void makeActions(),我无法访问该事件。我怎样才能克服这个问题?

private void hookDoubleClickAction()
{
    viewer.addDoubleClickListener(new IDoubleClickListener()
    {
        public void doubleClick(DoubleClickEvent event)
        {
            //TableViewer chek = (TableViewer) event.getViewer();

            doubleClickAction.run();
        }
    });
}

private void makeActions()
{
    doubleClickAction = new Action()
    {
        public void run()
        {

        }
    }
}

1 个答案:

答案 0 :(得分:0)

TableViewer作为主类中的字段引用(或将其作为参数传递给动作构造函数)。然后,您可以使用以下方式从操作中的查看器中获取当前选择:

IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();