如何在JTable中添加行?

时间:2010-08-23 15:44:43

标签: java swing jtable

您知道如何向jTable添加新行吗?

5 个答案:

答案 0 :(得分:158)

JTable后面的TableModel处理表后面的所有数据。要在表格中添加和删除行,您需要使用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的完整详细信息here

答案 1 :(得分:50)

使用:

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"});

答案 2 :(得分:12)

要将添加到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"});

答案 3 :(得分:8)

使用

    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);

即可

答案 4 :(得分:2)

为了完整起见,首先要确保您拥有正确的导入,以便使用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});
}