Добавление записей в JTable - PullRequest
2 голосов
/ 29 июля 2010

Я бы хотел отобразить таблицу входящих пакетов и их атрибутов.Позволяет ли JTable динамически добавлять строки?Единственный способ обновить представление - создать новый объект таблицы.

Ответы [ 3 ]

2 голосов
/ 29 июля 2010

да, вы можете манипулировать базовой моделью JTable. Модель - это место, где хранятся данные, и они запрашиваются JTable для различного содержимого ячейки. Вы можете манипулировать моделью либо с помощью JTable.setModel(...), либо с помощью реализации собственной TableModel и непосредственного управления ее данными, что является довольно простой задачей со множеством учебных материалов в Интернете. Вам просто нужно убедиться, что JTable обновляется при изменении модели, что легко достигается с помощью JComponent.pack() или аналогичных методов.

проверьте здесь некоторые уроки:

http://download -llnw.oracle.com / JavaSE / учебник / uiswing / компоненты / table.html

http://www.javalobby.org/articles/jtable/

http://www.java2s.com/Code/Java/Swing-JFC/TableModelExample.htm

http://www.codetoad.com/java_JTable.asp

надеюсь, что помогло ...

1 голос
/ 30 июля 2010

Используйте DefaultTableModel.У него есть методы, такие как addRow (...), removeRow (...), которые поддерживают динамическое обновление TableModel.

Вы всегда можете посмотреть на исходный код этого класса для правильного использования fireXXX.методы, если вам нужно использовать пользовательскую TableModel.

1 голос
/ 29 июля 2010

Вы можете использовать TableModel (например, наследовать от AbstractTabelModel), а затем использовать методы, такие как fireTableRowsInserted, чтобы сообщить таблице, что базовые данные изменились.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...