Java 如何向JTable中的现有行添加新行

Java 如何向JTable中的现有行添加新行,java,swing,jtable,Java,Swing,Jtable,我在Netbeans表单中开发了一个JTable。我希望程序能够以这样一种方式工作:当我单击一个按钮时,新准备好的记录将添加到现有记录中。我的问题是,当我想添加新记录时,只要我单击按钮,它就会替换现有的记录。有人能帮我把新记录添加到现有记录中吗 我的问题是,当我想添加新记录时,只要我单击按钮,它就会替换现有的记录 不要创建新的TableModel 相反,您应该使用DefaultTableModel.addRow(…)方法将新行添加到表的末尾 我的问题是,当我想添加新记录时,只要我单击按钮,它就会

我在Netbeans表单中开发了一个
JTable
。我希望程序能够以这样一种方式工作:当我单击一个按钮时,新准备好的记录将添加到现有记录中。我的问题是,当我想添加新记录时,只要我单击按钮,它就会替换现有的记录。有人能帮我把新记录添加到现有记录中吗

我的问题是,当我想添加新记录时,只要我单击按钮,它就会替换现有的记录

不要创建新的TableModel

相反,您应该使用
DefaultTableModel.addRow(…)
方法将新行添加到表的末尾

我的问题是,当我想添加新记录时,只要我单击按钮,它就会替换现有的记录

不要创建新的TableModel

相反,您应该使用
DefaultTableModel.addRow(…)
方法将新行添加到表的末尾。

使用和简单调用方法添加新行

  • 此表包含4个现有行
  • 单击按钮时会添加新行
示例代码:

    Object data[][] = { { "111 Hello", "Capital1", "TX 11111" },
                        { "222 Hello", "Capital2", "TX 22222" },
                        { "333 Hello", "Capital3", "TX 33333" },
                        { "444 Hello", "Capital4", "TX 44444" } 
                      };
    String col[] = { "Name", "Capital", "TX" };

    final DefaultTableModel model = new DefaultTableModel(data, col);
    final JTable table = new JTable(model);

    ....

    final JButton addButton = new JButton("Add");
    addButton.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            Object[] newRecord = { "555 Hello", "Capital5", "TX 55555" };
            model.addRow(newRecord); // <== Adding new row here
        }
    });
objectdata[][]={{{“111你好”,“Capital1”,“TX 11111”},
{“222你好”,“Capital2”,“TX 2222”},
{“333你好”,“Capital3”,“TX 33333”},
{“444你好”、“Capital4”、“TX 44444”}
};
字符串col[]={“Name”,“Capital”,“TX”};
最终DefaultTableModel=新的DefaultTableModel(数据,列);
最终JTable表格=新JTable(模型);
....
最终JButton addButton=新JButton(“添加”);
addButton.addActionListener(新ActionListener(){
@凌驾
已执行的公共无效操作(操作事件arg0){
Object[]newRecord={“555你好”,“Capital5”,“TX 55555”};
model.addRow(newRecord);//在其上使用和简单的调用方法来添加新行

  • 此表包含4个现有行
  • 单击按钮时会添加新行
示例代码:

    Object data[][] = { { "111 Hello", "Capital1", "TX 11111" },
                        { "222 Hello", "Capital2", "TX 22222" },
                        { "333 Hello", "Capital3", "TX 33333" },
                        { "444 Hello", "Capital4", "TX 44444" } 
                      };
    String col[] = { "Name", "Capital", "TX" };

    final DefaultTableModel model = new DefaultTableModel(data, col);
    final JTable table = new JTable(model);

    ....

    final JButton addButton = new JButton("Add");
    addButton.addActionListener(new ActionListener() {

        @Override
        public void actionPerformed(ActionEvent arg0) {
            Object[] newRecord = { "555 Hello", "Capital5", "TX 55555" };
            model.addRow(newRecord); // <== Adding new row here
        }
    });
objectdata[][]={{{“111你好”,“Capital1”,“TX 11111”},
{“222你好”,“Capital2”,“TX 2222”},
{“333你好”,“Capital3”,“TX 33333”},
{“444你好”、“Capital4”、“TX 44444”}
};
字符串col[]={“Name”,“Capital”,“TX”};
最终DefaultTableModel=新的DefaultTableModel(数据,列);
最终JTable表格=新JTable(模型);
....
最终JButton addButton=新JButton(“添加”);
addButton.addActionListener(新ActionListener(){
@凌驾
已执行的公共无效操作(操作事件arg0){
Object[]newRecord={“555你好”,“Capital5”,“TX 55555”};

model.addRow(newRecord);//希望这篇文章和下面的答案对你的努力有所帮助:-)欢迎来到Stack Overflow!在你发布更多问题之前,请仔细/彻底阅读1..2.3..希望这篇文章和下面的答案对你的努力有所帮助:-)欢迎使用Stack Overflow!在您发布更多问题之前,请仔细/彻底阅读1..2.3..I已经遵循了您的方法,但当我单击Jbutton时,它仍然会替换第一行中的记录,而不会将其添加为新记录。我使用的是netbeans表单请帮助我您是否尝试过我与您共享的示例代码。请se如果不起作用,请先尝试,然后在原始帖子中共享您的代码。我遵循了您的方法,但当我单击Jbutton时,它仍然会替换第一行中的记录,而不会将其添加为新记录。我使用的是netbeans表单。请帮助我您是否尝试过我共享给您的示例代码。如果这样做,请先尝试不工作,然后在原始帖子中共享代码。