我无法将jTextFields中的数据值插入jTables。
我的addCustomerToTable是一个带有来自另一个类的参数的函数。我做错了什么?
我检查变量,他们有其他类的值,但我不能将它们插入到jTable行。
public void addCustomerToTable(int accountNum, String fname, String mname, String lname, double deposit){
String account = Integer.toString(accountNum);
String fnames = fname;
String mnames = mname;
String lnames = lname;
String deposits = Double.toString(deposit);
//table.setRowCount(table.getRowCount()+1);
//DefaultTableModel table = (DefaultTableModel) jTable2.getModel();
DefaultTableModel table = new DefaultTableModel();
jTable2.setModel(table);
Object row[] = {account, fnames, mnames, lnames, deposits};
table.addRow(row);
}
答案 0 :(得分:1)
在我看来,你基本上有解决方案......
public void addCustomerToTable(int accountNum, String fname, String mname, String lname, double deposit){
String account = Integer.toString(accountNum);
String fnames = fname;
String mnames = mname;
String lnames = lname;
String deposits = Double.toString(deposit);
DefaultTableModel table = (DefaultTableModel) jTable2.getModel();
Object row[] = {account, fnames, mnames, lnames, deposits};
table.addRow(row);
}
您从DefaultTableModel
获得JTable
并使用addRow
功能。
如果这不起作用,那么您的代码还有其他问题,您没有使用它,您应该考虑提供一个runnable example来证明您的问题。这不是代码转储,而是您正在做的事情的一个示例,它突出了您遇到的问题。这将减少混淆和更好的响应
您可能还希望查看How to Use Tables
答案 1 :(得分:0)
无需使用新的TableModel
,只需获取jTable
当前TableModel
并直接向其添加行:
DefaultTableModel model = (DefaultTableModel) jTable2.getModel();
model.addRow(new Object[] {account, fnames, mnames, lnames, deposits});
请查看Appending a Row to a JTable Component以获取更多信息。
修改强>
如果问题仍然存在,那么您的代码中可能还有其他问题,请检查jTable
中是否有相同数量的列,也许这个新行无法添加到模型中