JAVA中JTable表刷新的小问题..!

来源:百度知道 编辑:UC知道 时间:2024/05/18 18:38:14
在JTextField 里输入一个数,点"添加行"后,JTable表里就会生成出相对应的行!现在有个问题.就是不能刷新,如果在点"添加行",表里就会又生成对应的行来,我想要的效果是:比如输入要2行,点按钮生成2行,在输入5行,就生成5行,把原来的2行删除!
import java.awt.Dimension;
import java.awt.Rectangle;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.table.DefaultTableModel;
import javax.swing.*;

public class Creg extends JFrame {
private JTextField text = new JTextField();
private JButton jButton1 = new JButton();

DefaultTableModel tableModel = new DefaultTableModel();
private JTable table = new JTable(tableModel);
private JScrollPane jScrollPane1 = new JScrollPane();
int count;

public Creg() {
try {
jbInit();
} catch (Exception e) {
e.printStackTrace();
}
}

public static void main(String[] args) {
Creg

jButton1.addActionListener(new ActionListener()
{

public void actionPerformed(ActionEvent e) {
int previous=tableModel.getRowCount();
for(int k=0;k<previous;k++)
{
tableModel.removeRow(tableModel.getRowCount()-1);
}

try
{
count=Integer.parseInt(text.getText().trim());
} catch(Exception exp)
{
count=0;
}

for(int i=0;i<count;i++) {
tableModel.addRow(new String[] {"" , "" , "" });
}
System.out.println(previous);
}
});

帮你在事件里面稍稍该了一下!可能不标准,我没做过这个东西!

 
 
 
要达到刷新的效果并不麻烦,只需在你的 for 循环之前加入清空表的代码:
tableModel.setRowCount(0);