Добавление строк в JTable

У нас есть простой проект, в котором мы читаем данные из сокета, и мы хотим заполнить таблицу предстоящими данными, но мы не можем найти способ добавить строки к еще созданному объекту JTable , мы можем только найти, как добавлять строки во время создания таблицы.

Можно ли динамически добавлять строки в JTable или есть лучший альтернативный объект для обработки этого способа отображения данных?

EDIT : Большое спасибо за ваши ответы.

Все трое выглядят очень многообещающими, но я должен выбрать только один, и я думаю, что лучшим является Гийом.

Вы должны создать пользовательский TableModel . JTable фактически не хранит строки, он всегда делегирует это TableModel . Чтобы помочь вам реализовать его, вы должны использовать AbstractTableModel . Не забудьте вызвать fireTableRowsInserted() каждый раз, когда вы добавляете строки. Для улучшения производительности, если вы добавляете много строк, попробуйте выполнить пакет обновления и добавить несколько строк за раз.

Если вы используете модель таблицы по умолчанию для JTable, вы можете добавить строки со следующим кодом

  if ( dest+1 < table.getRowCount()-1 ) ( (DefaultTableModel) table.getModel() ).insertRow(dest+1, getValuesForNewRow()); else ( (DefaultTableModel) table.getModel() ).addRow(getValuesForNewRow()); 

Как только вы начнете динамически добавлять и удалять элементы из JTable, вам действительно нужно начать использовать TableModel.

Дополнительную информацию см. В Руководстве по Java .

  • Как установить изображение в качестве фона для фрейма в Swing GUI java?
  • SwingWorker не отвечает
  • Как проверить JTextField?
  • Как удалить пробел в ярлыке java большого размера
  • Должны ли мы использовать EventQueue.invokeLater для любого обновления графического интерфейса пользователя в настольном приложении Java?
  • Java KeyListener vs Keybinding
  • Обнаружение нескольких нажатий клавиш в java
  • Как изменить цвет текста в JtextArea?
  • Как использовать ключевые привязки вместо ключевых прослушивателей
  • Swing - Обновить ярлык
  • Проблемы с JFormattedTextField
  • Interesting Posts

    AngularJS – сброс значения $ scope.value не изменяет значение в шаблоне (случайное поведение)

    Font-awesome, тип ввода ‘submit’

    VS2010 не показывает необработанное сообщение об исключении в приложении WinForms в 64-разрядной версии Windows

    Удалить AVG Secure Search

    Как суммировать все значения столбцов в многомерном массиве?

    Mac: Как записывать телефонный звонок VoIP (микрофон и выход одновременно)?

    как создать веб-сервис из wsdl

    Как получить только один файл из другого филиала

    Преобразовать float в строку с заданной точностью и количеством десятичных цифр?

    Ноутбуки без шума заземления

    iPhone UIWebView локальных ресурсов с использованием Javascript и обработки onorientationChange

    Когда разница между quotRem и divMod полезна?

    Преобразование NSData в base64

    Hibernate: org.hibernate.LazyInitializationException: не удалось инициализировать прокси – нет сеанса

    Можно ли читать общий логический флаг без его блокировки, когда другой stream может установить его (не более одного раза)?

    Давайте будем гением компьютера.