如何在 JTable 中添加行?
Posted
技术标签:
【中文标题】如何在 JTable 中添加行?【英文标题】:How to add row in JTable? 【发布时间】:2011-04-02 17:29:18 【问题描述】:您知道如何向jTable
添加新行吗?
【问题讨论】:
【参考方案1】: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");
您也可以使用此方法删除行。
可以在here找到有关 DefaultTableModel 的完整详细信息
【讨论】:
+1 这是一个很好的答案;但是,请注意 DefaultTableModel 只是众多模型之一。但是,它是最容易使用的,除非您必须使用另一个,否则我建议您坚持使用它。 在使用您的第一行代码创建表时,出现错误“构造函数 DefaultTableModel(Object[]) 未定义” @ThisClark: 对于那个 DefaultTableModel 构造函数,你还需要添加 rowCount,比如:JTable table = new JTable(new DefaultTableModel(new Object[]"Column1", "Column2", 20));
【参考方案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
为comumns
尽快添加,只需添加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);
【讨论】:
以上是关于如何在 JTable 中添加行?的主要内容,如果未能解决你的问题,请参考以下文章