想在JTable中的每条记录后插入空行

时间:2014-09-11 10:05:56

标签: java swing jtable core

    try
    {
        Class.forName("com.mysql.jdbc.Driver");
        con=DriverManager.getConnection("jdbc:mysql://localhost/BOA","root","");
        st=con.createStatement();
        String sql=("select gbal from GeneralLedger where group='Capital'");
        rs=st.executeQuery(sql);    
        while(rs.next())
        {
            Vector row=new Vector();
        row.add("Capital"); 
                row.add("");
            row.add("1");
            row.add("Fixed Assets");
                row.add("");
        row.add("7");
            data.add(row);

        }
    }
    catch(Exception e)
    {
        System.out.println(e);
    }

我成功地从数据库中获取记录并存储在我的JTable中,但不知道如何在JTable中的每条记录后添加空行? 任何人都可以建议我吗?

1 个答案:

答案 0 :(得分:2)

defaultTableModel.addRow(new Object[] {});怎么样,假设 使用DefaultTableModel。你应该使用某种模型。如果您有自定义模型,请将其显示给我们。

以下是DefaultTableModel

的简单示例
import java.awt.BorderLayout;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;

public class TestTable {

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                String[][] data = { { "Data", "Data" } };
                String[] col = { "Col", "Col" };
                final DefaultTableModel model = new DefaultTableModel(data, col);
                JTable table = new JTable(model);
                JButton addRow = new JButton("Add Empty Row");
                addRow.addActionListener(new ActionListener() {
                    public void actionPerformed(ActionEvent e) {
                        model.addRow(new Object[] {});
                    }
                });
                JPanel panel = new JPanel(new BorderLayout());
                panel.add(new JScrollPane(table));
                panel.add(addRow, BorderLayout.SOUTH);
                JOptionPane.showMessageDialog(null, panel);
            }
        });
    }
}

如果您没有使用模型的经验,请参阅How to Use Tables: Creating a TableModel


编辑新评论并修改

您需要做的就是每次添加新行时添加一个emtpy Vector