Нетривиально - декоратор проделывает долгий путь для реализации выбора вместо удаления; -)
Сначала вам нужно определить, какое поведение вы хотите. Затем реализуйте Действие, которое соответствует вашим намерениям, и поместите его в ActionMap редактора:
Action myBackspace = ...
ActionMap map = ((JComponent) decorateCombo.getEditor().getEditorComponent())
.getActionMap();
map.put("nonstrict-backspace", myBackspace);
Это расплывчато, потому что, поскольку я не могу знать, что именно вы хотите, лучше всего взглянуть на источник автозаполнения, чтобы получить представление о том, как реализовать myBackspace
Редактировать
Просто немного проясним неопределенность: моей первой мыслью было просто переустановить привязку возврата по умолчанию, например:
InputMap map = ((JComponent) decorateCombo.getEditor().getEditorComponent())
.getInputMap();
map.put(KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_BACK_SPACE, 0),
DefaultEditorKit.deletePrevCharAction);
это, скорее всего, не то, что ожидается: если каретка находится где-то посередине содержимого элемента в редактируемом комбо, то текст от каретки до конца выбирается, следовательно deletePrev удаляет выбранный, а не предыдущий символ , Что может привести к реализации настраиваемого действия: сначала очистите выделение, затем deletePrev, затем проверьте, есть ли новое слово в списке, и повторно выберите (или нет). Трудно сказать, не зная требования.