gpt4 book ai didi

java - 动态地将值添加到现有 JTable

转载 作者:行者123 更新时间:2023-12-01 09:48:43 25 4
gpt4 key购买 nike

我使用以下方式创建了 JTable。该表有 5 列和 4 行。在此状态下,所有 4 行都是空的。

String[] columns = {"Emplotee ID","Name","Address","City","Salary"};

//Table that already have 4 empty rows
DefaultTableModel model = new DefaultTableModel(columns,4);
JTable detail = new JTable(model);
JScrollPane scroll = new JScrollPane(detail);

现在我想使用字符串数组将值添加到这些空行中。该程序的 GUI 有 5 个 JTextField 来获取用户输入。当我在 JTextFileds 中输入值并单击“添加”按钮时,所有 JTextFiled 值均通过字符串数组命名值获取。

String[] values = new String[6];
//When click addButton all textFiled data should go into table
addButton.addMouseListener(new MouseAdapter(){
@Override
public void mouseClicked(MouseEvent evt){
values[0] = idField.getText(); //get JTextFields data into array
values[1] = nameField.getText();
values[2] = addressField.getText();
values[3] = cityField.getText();
values[4] = salaryField.getText();

//What now?
}
});

我知道我可以用它来向表中添加新行。但这不是我想要的功能。

DefaultTableModel newModel = (DefaultTableModel)detail.getModel();
newModel.addRow(values);

最佳答案

设置现有表格行的内容:

int row;
....
// make sure row is set to index of the table row
// you want to populate
for (int c=0; c<values.length; ++c)
detail.setValueAt(values[c], row, c);

TableModel 还具有 setValueAt 方法(如果您愿意)。

关于java - 动态地将值添加到现有 JTable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37772706/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com