ComboBoxCellEditor仅在焦点丢失时设置值

时间:2016-04-16 20:52:43

标签: java user-interface swt jface

有没有办法在ComboBoxCellEditor以外设置值,然后当焦点在单元格上丢失时?我在TreeViewer的列的每个单元格中使用它,并且唯一一次调用setValue方法是在单元格上丢失焦点时。因此,当用户进行选择而不单击单元格时,该值永远不会设置为新选择。我已尝试在ComboBoxCellEditorComboBoxCellEditor的控件上添加侦听器,但似乎没有任何内容可以选择事件。

1 个答案:

答案 0 :(得分:2)

我发现我需要将控件转换为CCombo才能将正确类型的侦听器添加到ComboBoxCellEditor。这就是我的所作所为:

CCombo combo = (CCombo) cellEditor.getControl();

combo.addSelectionListener(new SelectionListener()
{

    @Override
    public void widgetSelected(SelectionEvent paramSelectionEvent)
    {
        //selection code here...
    }

    @Override
    public void
        widgetDefaultSelected(SelectionEvent paramSelectionEvent)
    {
        //do nothing here...
    }
});