【问题标题】:SWT JFace: How to make TableViewer always selects a row?SWT JFace:如何让 TableViewer 总是选择一行?
【发布时间】:2011-12-20 23:40:44
【问题描述】:

我是 JFace 的新成员。

我的表格查看器分配代码是:

viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL
| SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.BORDER);

我创建了一个 TableCursor 来连续选择不同的单元格。

然后我发现让用户“什么都不选择”是很尴尬的。 :-(

我想知道是否有要设置的 SWT 属性或一些编码解决方案来强制用户始终选择一行。

【问题讨论】:

    标签: java eclipse swt jface


    【解决方案1】:

    您必须手动取消选择,请参阅以下 sn-p:

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
    
        private boolean update;
    
        private ISelection lastSelection;
    
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            if (event.getSelection().isEmpty() && !update) {
                update = true;
                v.setSelection(lastSelection);
                update = false;
            } else if (!event.getSelection().isEmpty()) {
                lastSelection = event.getSelection();
            }
    
        }
    });
    

    【讨论】:

      猜你喜欢
      • 2011-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-06
      • 1970-01-01
      • 1970-01-01
      • 2015-12-15
      相关资源
      最近更新 更多