@Override public void stateChanged(ChangeEvent event) { Object source = event.getSource(); if ( source instanceof SSpinner ) { getTextField().setValue( ((SSpinner)source).getValue() ); } }
@Override public void processLowLevelEvent(String action, String... values) { String text = getText(); super.processLowLevelEvent( action, values ); SSpinner spinner = getSpinner(); if (isEditable() && isEnabled() && spinner != null ) { if ( text == null || !text.equals( values[0] ) ) { Object lastValue = spinner.getValue(); try { spinner.setValue( getTextField().getValue() ); } catch (IllegalArgumentException iae) { try { getTextField().setValue(lastValue); } catch (IllegalArgumentException iae2) { } } } } } };