如何在JFace TableViewer中获取所选项的索引?

时间:2015-11-24 06:32:55

标签: swt jface

我正在使用ISelectionChangedListener收听JFace TableViewer上的选择事件。有没有办法获取所选行的索引?

tableViewer.addSelectionChangedListener(new ISelectionChangedListener()
 {
     @Override
     public void selectionChanged(SelectionChangedEvent selectionEvent)
     {             
         final IStructuredSelection selection = (IStructuredSelection) historyTableViewer.getSelection();
         if (selection != null)
         {
            selectedEvent = (castToObject) selection.getFirstElement();

         }
     }
 });

所以,我说在TableViewer的8行中选择了第4行。我怎么知道选择对应第4行?

2 个答案:

答案 0 :(得分:4)

您可以询问基础Table控件的选择索引:

int index = tableViewer.getTable().getSelectionIndex();

或多重选择:

int [] indices = tableViewer.getTable().getSelectionIndices();

但是当你使用TableViewer时,你通常不会使用行索引。

答案 1 :(得分:-1)

int index=tableViewer.getTable().getSelectionIndex();

return tableViewer.getElementAt(index)

****选择返回对象为tableviewer ****