我正在以下列方式使用带有复选框样式的tableviewer
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 :(得分:0)
复选框表上的选择侦听器仍然响应正常的行选择,它不响应单击复选框。
要为复选框更改添加侦听器,您需要使用CheckboxTableViewer
并使用addCheckStateListener
方法。
CheckboxTableViewer
还有许多帮助方法来管理复选框状态。