Вернуть данные из комбинированного
Я искал в гугле решение для извлечения данных из компонента JList, но не нашел any.So, существует ли метод Jlist, который возвращает его элементы? Мне не нужен только избранный. Мне нужен весь список.
Причина в том, что у меня есть этот метод, который обновляет все компоненты диалогового окна на основе выбранного значения списка. Я хочу обновить этот список тем же методом. Поэтому для этого метод не должен обновлять список всякий раз, когда он вызывается. Она должна сравните значения в списке с самыми последними данными, которые я храню в одном классе.(переходит в бесконечный цикл в противном случае) только тогда, когда данные в списке не совпадают с данными в классе, он обновляется.
Существует ли такой метод для извлечения всех данных списка?
3 ответа:
Вы должны использовать метод getModel (), чтобы получить данные модели, а затем использовать методы внутри ListModel, чтобы получить все элементы данных.
ListModel model = list.getModel(); for(int i=0; i < model.getSize(); i++){ Object o = model.getElementAt(i); }
Http://docs.oracle.com/javase/6/docs/api/javax/swing/JList.html#getModel()
Http://docs.oracle.com/javase/6/docs/api/javax/swing/ListModel.html
Чтобы получить выборки, вам нужно будет использовать комбинацию
getModel
иgetSelectedIndices
ListModel model = jListInstance.getModel(); for(int index : jListInstance.getSelectedIndices()) { System.out.println(model.getElementAt(index)); }
Используйте метод getModel() для извлечения модели данных, содержащейся в JList. Модель списка может быть пройдена следующим образом:
ListModel list = jListObj.getModel(); for(int i = 0; i < list.getSize(); i++){ Object obj = list.getElemenetAt(i); }
Http://docs.oracle.com/javase/6/docs/api/javax/swing/ListModel.html http://docs.oracle.com/javase/6/docs/api/javax/swing/JList.html#getModel%28%29