2012-01-26 6 views
1

Для тех, кто знаком с SwingX's AutoCompleteDecorator, у меня есть вопрос относительно обработки всплывающей подсказки JComboBox. Я использовал AutoCompleteDecorate.decorate(JComboBox combobox) в моем текущем проекте, о котором я уже упоминал в своих предыдущих сообщениях, проблема, с которой я столкнулся, когда пользователь вводит ключевое слово, которое не соответствует ни одному из элементов списка со списком, всплывающее окно остается видимым. Для удобства пользователей я хотел бы скрывать всплывающее окно combobox, если введенное ключевое слово не соответствует ни одному из элементов списка.AutoCompleteDecorate, реализованный на JComboBox

+0

swingx бирка добавлен. Надеюсь, это привлечет Клеопатру к вашему вопросу. –

+1

@Hovercraft привлек :-) Нет ответа: это не поддерживается (предполагается, что вы хотите скрыть всплывающее окно), и я не уверен, что это должно быть запутанным пользовательским интерфейсом, если всплывающее окно скрывает/показывает, казалось бы, без причины ... – kleopatra

+0

_ @ kleopatra спасибо, что позволили себе «привлечь» к моему вопросу :) В любом случае возможно переопределить видимость всплывающих окон? _ – dmfrl

ответ

1

Если вы хотите использовать функцию автозаполнения, но не хотите всплывать на этом пути (особенно, если вы укажете, когда введенный текст не соответствует ни одному элементу), вы можете попробовать открыть источник JIDE Common Layer. Это очень полезно (я использую это много я) функция автозаполнения, что вы можете обратиться к JComboBox эс, JTextField с, и т.д ..

Вы можете увидеть обзор Java Web Start компонентов, нажав на «RUN IT "на приведенной выше странице или нажав here. Перейдите к

 
Demos->AutoCompletion Demo->AutoCompletion combo box and text field->AutoCompletion JTextField with a hidden data 

, чтобы опробовать его. Вы также можете увидеть исходный код, нажав на . Исходный код.

Вы можете включить/выключить код, чтобы предотвратить/разрешить пользователю вводить текст, не совпадающий с элементами.

Однако, насколько я проверял, комбинированные поля JIDE с автозаполнением также имеют «проблему», открывающую всплывающее окно, даже если совпадение не найдено, но я предлагаю здесь попробовать автозаполнение текстового поля, которое не имеет всплывающего окна вообще (они автоматически заполняются, выделяя часть совпадающего текста, который вы не вводили вручную).

Смежные вопросы