[英]Eclipse RCP: How to listen to CheckboxTableViewer selection in other view
我有一个Eclipse RCP,其视图的控件是CheckboxTableViewer。
我想使用WorkbenchPage的SelectionService(出于松耦合的原因)对编辑器中视图内的检查/取消检查动作做出反应。
所以我做getSite().setSelectionProvider(myTableViewer);
在视图的createPartControl()
方法中。
另外,我在编辑器中创建了一个侦听器字段:
private ISelectionListener mylistener = new ISelectionListener() {
public void selectionChanged(IWorkbenchPart sourcepart, ISelection selection) {
System.out.println(((IStructuredSelection) selection).size());
}
};
不幸的是,我只能得到控制台中打印出来的选定行数,而不是选中元素的数目。 我试图以某种方式将myTableViewer.getCheckedElements()
传递给SelectionProvider
,但是找不到访问点:(。
您可以编写自己的ISelectionProvider
实现,该实现返回选中的元素,而不是使用TableViewer
实现的默认提供程序来返回选中的元素。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.