См. ниже важность SSCCE. Не все, что идет не так, является ошибкой, в большинстве случаев это что-то не так в вашем фактический код, без которого без SSCCE мы не мудрее.
Кажется, у меня отлично работает:
На старте:
После выбора JComboBox
и нажатия Backspace:
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;
public class Test {
public Test() {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
JFrame frame = new JFrame("Test");
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
JComboBox jc = new JComboBox(new String[]{"Hello", "Bye", "World", "Cruel"});
jc.setEditable(true);
frame.add(jc);
frame.pack();
frame.setVisible(true);
}
});
}
public static void main(String[] args) {
new Test();
}
}
ОБНОВЛЕНИЕ
Согласно вашему комментарию:
Я не думал, что это будет работать нормально! ... Это проблема в Субстанции; L&F я использую.
Подробнее об ошибке см. ниже:
Вещество: редактируемый JComboBox не поддерживает клавишу возврата
Как указано:
Такое поведение является особенностью. Это «чувственная» часть Substance, которая добавляет автозаполнение в редактируемые поля со списком.
В качестве альтернативы см. мой ответ здесь для получения дополнительных L & Fs и/ или способ сделать свой
ОБНОВЛЕНИЕ 2:
Благодаря @Brad (за расшифровку журнала ошибок, который я связал с Substance: P), чтобы исправить это, просто выполните:
UIManager.put( LafWidget.COMBO_BOX_NO_AUTOCOMPLETION, Boolean.TRUE );
person
David Kroukamp
schedule
30.06.2013