Я использую объект JTable, чтобы показать некоторые данные, хранящиеся в базе данных.Теперь я хотел бы получить следующий результат:
Отображаемая таблица JTable должна содержать не менее n (пусть будет 10) строк, даже если в моей таблице базы данных меньше записей.Пустая строка всегда должна отображаться в конце таблицы.
Так как теперь я делаю следующее:
Я реализовал свою собственную модель таблиц, расширяющую AbstractTableModel.И в реализованном методе getRowCount я сделал:
public int getRowCount() {
if (myRowCount < 10 )
return 10;
else
return myRowCount;
}
Вопросы:
- Этот код работает нормально, но мне было интересно, если это правильный подход для достижения этого результата.Это хорошее решение?
- В дополнение к этому, если я попытаюсь отсортировать строку, я получил нежелательный вывод.На самом деле пустые строки учитываются при сортировке, что приводит к тому, что (например, упорядочение столбца типа int в порядке убывания) пустые строки отображаются в начале таблицы.Должен ли я реализовать свой собственный TableRowSorter, чтобы избежать такого поведения, или это возможно по умолчанию (table.setAutoCreateRowSorter (true))?
заранее спасибо
EDIT:я читаю @mKorbel ссылки с @kleopatra @camickr сообщений .Это мне очень помогает.Но я действительно хочу сделать это максимально чистым способом, потому что этот класс будет очень важен в моем приложении.Является ли решение, предложенное в предыдущем связанном посте, достаточно чистым?Или у него есть некоторые недостатки, которых я сейчас не вижу?
Я получил награду.Пожалуйста, дайте мне хорошие советы!спасибо ..
Марко