很抱歉这是一个非常业余的人,我在一个框架上创建了一个"按钮",这样当我们第一次点击按钮时,A ROW将被插入到框架上.但是我想要的是,当我点击按钮THE SECOND TIME时,行重新刷新(不创建新行!),我知道'.addRow(new Object [] {"","",""}) ;" 是因为,因为每次单击按钮都会创建对象,那么我怎么可能修改代码呢?感谢您的关注.
*我的弱脑说,如果我只能清空'模型'对象(或破坏对象,就像那样),那么我会找到解决方案,但我怎么可能清空/破坏那个'模型'对象?
import javax.swing.*;
import java.awt.event.*;
import javax.swing.table.DefaultTableModel;
public class MyTable extends JFrame {
private JTable table;
private DefaultTableModel model;
private JScrollPane scroll;
private JButton createRow;
private String headers[] = {"a", "b", "c"};
public MyTable() {
createRow = new JButton("Create Row");
model = new DefaultTableModel();
model.setColumnIdentifiers(headers);
table = new JTable();
table.setModel(model);
scroll = new JScrollPane(table);
add(createRow, java.awt.BorderLayout.NORTH);
add(scroll, java.awt.BorderLayout.CENTER);
createRowOn();
}
// while button is pressed then create A ROW
public void createRowOn() {
createRow.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (e.getSource() == createRow) {
model.addRow(new Object[]{"", "", ""});
}
}
});
}
public static void main(String args[]) {
MyTable t = new MyTable();
t.setVisible(true);
t.setSize(300, 300);
}
}
Run Code Online (Sandbox Code Playgroud)
很抱歉这么业余
我在框架上创建了一个"按钮",这样当我们第一次点击按钮时,A ROW将被插入到框架上.但是当我点击第二次按钮时,我想要的是,行重新刷新(不创建新行!),我怀疑'new Object [] {"","",""}'是原因,因为每次单击按钮都会创建对象,所以我怎么可能修改代码呢?
如果您想要:不清楚问题(没有添加到JTable):
添加一个新行(model.addRow)
删除所有行(setDataVector/setRowCount)
重置JTables视图中的值(setValueAt)
但是一切都在Oracle教程中描述,休息在DefaultTableModel中