2014-02-13 4 views
0

Я использую TableViewer стиле Check Box следующим образомJFace TableViewer Флажок возвращает нуль в затмении e4

tableViewer = new TableViewer(parent, SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER| SWT.CHECK);

Я использовал следующий код для прослушивания TableViewer. Я знаю, что это неправильно, потому что он слушает выбор, а не флажок.

tableViewer.addSelectionChangedListener(new ISelectionChangedListener() { 
      @Override 
      public void selectionChanged(SelectionChangedEvent event) { 
      IStructuredSelection selection = (IStructuredSelection)tableViewer.getSelection(); 
      Object firstElement = selection.getFirstElement(); 
      System.out.println("firstElement"+firstElement); 
      // Do something with it 
      } 
     }); 

Мне нужно прослушать выбор флажка в JFace TableViewer.

Заранее спасибо

ответ

0

Слушатель выбора на столе флажков все еще реагирует на нормальный выбор строк, он не реагирует на нажатия флажков.

Чтобы добавить прослушиватель для изменения флажка, вам необходимо использовать CheckboxTableViewer и использовать метод addCheckStateListener.

CheckboxTableViewer также имеет множество вспомогательных методов для управления состояниями флажков.

Смежные вопросы