Как добавить строку в JTable?

Знаете ли вы, как добавить новую строку в jTable?

Ответ 1

TableModel за JTable обрабатывает все данные за таблицей. Чтобы добавить и удалить строки из таблицы, вам нужно использовать DefaultTableModel

Чтобы создать таблицу с этой моделью:

JTable table = new JTable(new DefaultTableModel(new Object[]{"Column1", "Column2"}));

Чтобы добавить строку:

DefaultTableModel model = (DefaultTableModel) table.getModel();
model.addRow(new Object[]{"Column 1", "Column 2", "Column 3"});

Вы также можете удалить строки с помощью этого метода.

Подробную информацию о DefaultTableModel можно найти здесь

Ответ 2

Использование:

DefaultTableModel model = new DefaultTableModel(); 
JTable table = new JTable(model); 

// Create a couple of columns 
model.addColumn("Col1"); 
model.addColumn("Col2"); 

// Append a row 
model.addRow(new Object[]{"v1", "v2"});

Ответ 3

Чтобы добавить строку в JTable, один из способов:

1) Создайте таблицу, используя DefaultTableModel:

        DefaultTableModel model = new DefaultTableModel();
        model.addColumn("Code");
        model.addColumn("Name");
        model.addColumn("Quantity");
        model.addColumn("Unit Price");
        model.addColumn("Price");
        JTable table = new JTable(model);

2) Чтобы добавить строку:

        DefaultTableModel model = (DefaultTableModel) table.getModel();
        model.addRow(new Object[]{"Column 1", "Column 2", "Column 3","Column 4","Column 5"});

Ответ 4

Использование

    DefaultTableModel model = (DefaultTableModel) MyJTable.getModel();

    Vector row = new Vector();
    row.add("Enter data to column 1");
    row.add("Enter data to column 2");
    row.add("Enter data to column 3");
    model.addRow(row);

получить модель с DefaultTableModel modelName = (DefaultTableModel) JTabelName.getModel();

Создайте вектор с помощью Vector vectorName = new Vector();

добавьте так много row.add, что и в столбцах

добавить просто добавить его с помощью modelName.addRow(Vector name);

Ответ 5

Для полноты сначала убедитесь, что у вас есть правильный импорт, поэтому вы можете использовать функцию addRow:

import javax.swing.table.*;

Предполагая, что ваш jTable уже создан, вы можете продолжить и создать свой собственный метод добавления строк, который примет необходимые вам параметры:

public void yourAddRow(String str1, String str2, String str3){
  DefaultTableModel yourModel = (DefaultTableModel) yourJTable.getModel();
  yourModel.addRow(new Object[]{str1, str2, str3});
}