Hallo,
ich hab hier eine Tabelle in der ich in einer Spalte verschiedene CellEditoren benötige das klappt soweit auch ganz gut. Löse das in dem ich der TableViewerColumn einen EditingSupport setze.
Nun möchte ich das wenn man den Wert mit Enter bestätigt der CellEditor in der nächsten Zeile aktiviert wird.
hab das bisher so versucht:
Die nächste Zeile wird auch selektiert aber leider der Editor nicht aktiviert. Hat da jemand eine Idee wie das funktionieren könnte?
ich hab hier eine Tabelle in der ich in einer Spalte verschiedene CellEditoren benötige das klappt soweit auch ganz gut. Löse das in dem ich der TableViewerColumn einen EditingSupport setze.
Nun möchte ich das wenn man den Wert mit Enter bestätigt der CellEditor in der nächsten Zeile aktiviert wird.
hab das bisher so versucht:
Java:
protected CellEditor getCellEditor(Object element) {
CellEditor editor = null;
.....
editor = new TextCellEditor(tableViewer.getTable());
........
editor.getControl().addListener(SWT.DefaultSelection, new Listener(){
/* (non-Javadoc)
* @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event)
*/
public void handleEvent(Event arg0) {
int selIndex = tableViewer.getTable().getSelectionIndex() + 1;
tableViewer.getTable().setSelection(selIndex);
CellEditor cellEditor = getCellEditor(tableViewer.getTable().getItem(selIndex).getData());
tableViewer.getTable().setFocus();
cellEditor.activate();
cellEditor.setFocus();
}
});
}
return editor;
}
Die nächste Zeile wird auch selektiert aber leider der Editor nicht aktiviert. Hat da jemand eine Idee wie das funktionieren könnte?