【发布时间】:2016-04-23 17:29:50
【问题描述】:
所以我有一个 jtable,它应该将 Jtextfields 中的字段添加到表中,该表根据需要存在于窗格中(出现列名并且没有行)但是当我单击添加新行时而是添加一个空白列(并且仅一次)
创建我的表的方法
public void createTable(){
model.setColumnIdentifiers(columns);
JTable table = new JTable(model);
JScrollPane scrollPane = new JScrollPane(table);
table.setPreferredScrollableViewportSize(table.getPreferredSize());
tablepanel.add(scrollPane, BorderLayout.SOUTH);
}
还有我用来添加数据的按钮
class AddHandler implements ActionListener {
public void actionPerformed(ActionEvent e) {
if(e.getSource()==btnUpload)
{
String nameRow = txtName.getText();
String surnameRow = txtSurname.getText();
String phoneRow = txtPhone.getText();
String addressRow = txtAddress.getText();
String postcodeRow = txtPostcode.getText();
String emailRow = txtEmail.getText();
Object[] row = {nameRow,surnameRow,phoneRow,addressRow,postcodeRow,emailRow};
model.addRow(row);
}
}
}
我将默认模型设置为这样的全局变量:
private DefaultTableModel model = new DefaultTableModel();
欢迎提出任何建议
【问题讨论】:
-
Any suggestions are appreciated- 创建一个 SSCCE 来演示问题。因此,您创建了一个带有 JTable 和“添加行”按钮的框架。添加行按钮将简单地将一行硬编码数据添加到表中。然后,一旦您开始工作,您就可以从框架上的文本字段中动态获取数据。如果您对 SSCCE 有疑问,那么您有我们可以编译和测试的代码来看看您在做什么。