У меня есть проблема с получением текущего значения в редактируемом JComboBox в определенном случае: мое приложение создает редактируемый JComboBox со списком предопределенных текстов, так что пользователь может использовать один из предопределенных текстов или другой текст. Затем он может нажимать кнопки, которые будут считывать значение в JComboBox, и будет использовать это значение для выполнения своих действий.Редактируемый JComboBox: получить текущее значение при использовании ярлыков для запуска действий
Это работает большую часть времени, но не в некоторых ситуациях: если пользователь набирает текст без нажатия клавиши «Возврат», а затем активирует кнопку с помощью ярлыка (Alt + ...), я получаю предыдущее значение JComboBox, а не текущий. Если нажата клавиша Return или кнопка активируется нажатием на нее, я получаю правильное значение.
Чтобы прочитать значение, я сначала попробовал JComboBox.getSelectedItem().
Я прочитал следующие темы в stackoverflow How to get value that has been written in editable JComboBox? и Get input values from JComboBox, поэтому я попробовал JComboBox.getEditor(). GetItem(), не видя разницы.
Я также читал How can I know when the text of an editable JComboBox has been changed? и пытался использовать JComboBox.getEditor(). GetEditorComponent(). ToString(): ничего не изменилось.
Любая идея?
Ярлыки были добавлены к кнопкам, используя их InputMap.