Java glazedlists: как обновить строку таблицы

Я здесь упускаю что-то очевидное.

У меня есть глазедлисты EventList<X> где X мой пользовательский класс Этот список содержит кучу значений. Когда я обновляю одно из значений, как мне убедиться, что графический интерфейс обновляет отображение для этой строки?

3 ответа

Решение

Способ сделать это состоит в том, чтобы заменить элемент списка на себя:

 EventList<X> list = /* get reference to a list */
 X x = list.get(3);
 /* update x here */
 list.set(3,x);

Похоже, вы можете вызвать addListEventListener для регистрации ListEventListener. Смотрите также учебник по застекленным спискам.

Часто задаваемые вопросы упоминают два пути под вопросом:

Как мне сказать Glazed Lists, что объект в моем EventList обновлен?

Либо вы используете подход get/set, как указано Джейсоном, либо вы делаете элементы в списке наблюдаемыми, например, PropertyChangeListener а затем использовать ObservableElementList, Я думаю, что этот второй подход более чистый, и он также должен работать с параллельными потоками.

Другие вопросы по тегам