Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> SwingX AutoCompleteDecorator 
:(
    Опции темы
ssadmn
  Дата 21.10.2010, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 8.10.2010

Репутация: нет
Всего: нет



Привет всем. Я новичок в Java, посему прошу не казнить сразу smile
Хочу сделать autocomplete (поле для поиска+список данных) через либу SwingX 6.1(или 6.2)...
Трабла в следующем, рисую простейшее десктопное приложение с двумя объектами JList и JTextComponent, подключаю либу SwingX, вызываю метод
Код

AutoCompleteDecorator.decorate(JList list, JTextComponent textComponent);

для созданных двух объектов (естественно с заполненными данными). Запускаю прогу, далее если выбрать(мышкой) значение в списке(JList) или ввести символ в поле поиска(JTextComponent) кроет матом:
Код

Exception occurred during event dispatching
java.lang.NullPointerException
        at org.jdesktop.swingx.autocomplete.ListAdaptor.valueChanged(ListAdaptor.java:76)
        at javax.swing.JList.fireSelectionValueChanged(JList.java:1765)
        at javax.swing.JList$ListSelectionHandler.valueChanged(JList.java:1779)
        at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:167)
        at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:147)
        at javax.swing.DefaultListSelectionModel.fireValueChanged(DefaultListSelectionModel.java:194)
...


Этот же перегруженный метод, с применением например только JComboBox работает без проблем!!!
Код

AutoCompleteDecorator.decorate(JComboBox comboBox)

Пытался гуглить, но ничего не нашёл...Может кто сталкивался с этой ситуацией? Прошу помощи/разъяснений smile

p.s. код создавался на основе демо-приложения для SwingX-либы. Надеюсь не ошибся разделом/форумом smile
PM MAIL   Вверх
jk1
Дата 21.10.2010, 14:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1168
Регистрация: 17.10.2008
Где: Санкт-Петербург

Репутация: 21
Всего: 75



Попробуйте в явном порядке задать преобразователь:
Код

AutoCompleteDecorator.decorate(values, area, new ObjectToStringConverter() {
            @Override
            public String getPreferredStringForItem(Object item) {
                return item == null? null:item.toString();
            }
        });



--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
ssadmn
Дата 21.10.2010, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 8.10.2010

Репутация: нет
Всего: нет



Заработало со стандартным конвертером, который по-сути является вашим вариантом:
Код

AutoCompleteDecorator.decorate(jList1, jTextField1, ObjectToStringConverter.DEFAULT_IMPLEMENTATION);

, вот только в чем дело в моем случае, если учесть, что список данных в виде List<String> ? Простой человеко-кодерский интерес...указанный ранее мною метод deprecated или чего? Или же так называемый исходный код в демке не верен?
p.s. если известно, скажите в каком состоянии находится/разрабатывается сама либа SwingX, я имею ввиду насколько она работоспособна? Хотелось бы знать на сколько ей можно доверять.
PM MAIL   Вверх
jk1
Дата 21.10.2010, 15:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник
Сообщений: 1168
Регистрация: 17.10.2008
Где: Санкт-Петербург

Репутация: 21
Всего: 75



Цитата

Хотелось бы знать на сколько ей можно доверять. 


Релизы довольно свежие, проект явно развивается. С чем действительно плохо, так это с примерами использования. С другой стороны javadoc это отчасти компенсирует. Я в своей практике SwingX использую и ничего, плеваться не хочется.  smile 


--------------------
Opinions are like assholes — everybody has one
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0844 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.