У меня есть Jtable, в которой я устанавливаю данные с помощью функции setDataVector. Он работает нормально, но предположим, что если я изменил некоторую ширину столбца, просто перетащив с помощью мыши и после того, как новые данные загрузятся в одну и ту же таблицу то ширина этого столбца возвращается к положению по умолчанию. Поэтому в основном я хочу сохранить эту ширину, даже если новые данные загружаются.Jtable сохранить ширину столбца
ответ
Когда вы используете метод setDataVector(), структура таблицы может измениться, поэтому таблица автоматически воссоздает TableColumnModel, и вы теряете свою настройку.
При создании JTable в первый раз используйте следующий код:
JTable table = new JTable(...);
table.setAutoCreateColumnsFromModel(false);
предотвратить TableColumnModel от воссоздается.
Спасибо за помощь, я пытался использовать setAutoCreateColumnsFromModel(), но после этого изменения я получаю пустой стол. Также я использую пользовательскую модель таблицы для Jtable. – avinash
@avinash, 'я получаю пустой стол. 'Его простое решение, но поскольку вы все еще не принимали ответы ни на один из своих предыдущих вопросов, я не собираюсь тратить время на помощь тому, кто не ценит Помогите. – camickr
О, извините, я не знал об этом «принимающем ответе». Я попытаюсь позаботиться об этом в будущем. – avinash
Это происходит потому, что при использовании setDataVector()
согласно документам, которые воссоздают столбцы, а ширина столбца меняется на значение по умолчанию.
Попробуйте использовать setAutoCreateColumnsFromModel()
, чтобы предотвратить это поведение.
Как вы используете пользовательскую модель таблицы. Не используйте setDateVector(), он воссоздает столбцы. Вы можете управлять шириной столбца с использованием setPreferredWidth() метод вручную:
table.setModel(buildTableModel(rs));
TableColumnModel tcm = table.getColumnModel();
tcm.getColumn(0).setPreferredWidth(80);
tcm.getColumn(1).setPreferredWidth(200);
tcm.getColumn(2).setPreferredWidth(100);
tcm.getColumn(3).setPreferredWidth(100);
tcm.getColumn(4).setPreferredWidth(100);
- 1. автоматически вычисляет ширину столбца в JTable
- 2. Java JTable не может установить ширину столбца
- 3. Установить ширину столбца JTable по проценту
- 4. Как сохранить ширину столбца в ng-сетке?
- 5. html - chrome - сохранить минимальную ширину столбца
- 6. JTable set ширина столбца, чтобы сохранить весь текст
- 7. не удалось установить ширину столбца после появления jtable
- 8. Как получить максимальную ширину столбца с помощью TableColumnAdjuster на JTable
- 9. динамически изменять ширину столбца в JTable с Netbeans IDE
- 10. Как изменить ширину столбца таблицы
- 11. Сохранение одиночного столбца внутри JTable
- 12. Выбор строки и столбца Jtable, щелкнув jCombobox внутри столбца jtable
- 13. JTable Расчет суммы столбца
- 14. Настроить заголовок столбца JTable
- 15. Создание столбца JTABLE uneditable
- 16. Выделение заголовка столбца JTable
- 17. Заполнение первого столбца JTable
- 18. Изменение ширины столбца jtable
- 19. JTable ширина столбца
- 20. Разделение столбца Jtable
- 21. Заполнить и сохранить JTable обновлено
- 22. JTable: изменение столбца на основе внешнего ввода
- 23. Изменить ширину столбца столбца столбца столбца столбца столбца столбца/MonoDevelop?
- 24. Как установить ширину столбца таблицы Scala Swing
- 25. Автоматическая настройка столбца Jtable для соответствия содержимому
- 26. Настройка JTable ширины столбца из другого класса
- 27. Невозможно сохранить ширину затруднительного столбца таблицы с CSS COLGROUP
- 28. WPF Grids - как сохранить ширину столбца при изменении размера окна?
- 29. Отрегулируйте ширину столбца таблицы, чтобы сохранить текст в одной строке
- 30. сохранить ширину столбца с помощью адаптивной таблицы bootstrap3
Я с помощью пользовательского TableModel – avinash