Я создаю программу, которая фильтрует содержимое JTable, используя два столбца.Я использовал RowSorter, и все работает нормально - по крайней мере, в соответствии с тем, что я вижу (представление).
Каждую строку в таблице можно дважды щелкнуть, чтобы открыть диалоговое окно.Этот диалог позволяет редактировать информацию в таблице.Однако информация в диалоговом окне остается той же, что и в исходном представлении (до того, как была использована фильтрация).
Пример:
До фильтрации первой строки таблицыэто строка а.После фильтрации первая строка таблицы - это строка b.
Однако, когда я дважды щелкаю, чтобы открыть диалоговое окно в первой строке (после фильтрации, которая теперь должна быть строкой b, открывается диалоговое окно для строки a).) [Надеюсь, я объяснил это достаточно хорошо]
Думаю, моя проблема в том, что модель не обновляется после того, как фильтры были установлены.Я пытался:
for(int i = 0; i < table.getRowCount(); i++){
table.convertRowIndexToView(i);
}
и
for(int i = 0; i < table.getRowCount(); i++){
table.convertRowIndexToModel(i);
}
У меня также возникает аналогичная проблема при сортировке таблицы с использованием заголовков столбцов.
Как мнерешить эту проблему?