是否有添加列的简单解决方案&;在Java中,可编辑行动态地转换为表模型?

是否有添加列的简单解决方案&;在Java中,可编辑行动态地转换为表模型?,java,swing,jtable,Java,Swing,Jtable,我已经搜索了几个小时了,找不到任何整洁干净的解决方案来在Java中动态地向表模型添加列/元素。也许我是个糟糕的研究员,我不知道。这让我很沮丧,我读了两本不同的书,却完全没有找到关于这个主题的任何东西。我掠夺了谷歌庞大的数据库,却找不到任何有用的东西。我已经找到了一些添加行的“解决方案”,但它们似乎并不太好。我希望能够动态插入行和列。 我已经花了5杯茶&我大部分的精神稳定性来寻找这个解决方案,但没有成功 我在想这样的事情: rageTableModel.addColumn("No need to

我已经搜索了几个小时了,找不到任何整洁干净的解决方案来在Java中动态地向表模型添加列/元素。也许我是个糟糕的研究员,我不知道。这让我很沮丧,我读了两本不同的书,却完全没有找到关于这个主题的任何东西。我掠夺了谷歌庞大的数据库,却找不到任何有用的东西。我已经找到了一些添加行的“解决方案”,但它们似乎并不太好。我希望能够动态插入行和列。 我已经花了5杯茶&我大部分的精神稳定性来寻找这个解决方案,但没有成功

我在想这样的事情:

rageTableModel.addColumn("No need to be upset anymore!");
rageTableModel.addRow("No need to be upset anymore!");
也许有一些越来越简单的方法来解决我的困境,但我似乎无法独自找到它。我对Java相当陌生(2-3个月的经验),所以我的知识在这方面并没有那么广泛。任何帮助都将不胜感激


编辑:我看到到处都使用这个“addColumn”方法,我正试图在AbstractTableModel的对象上使用它;没有胜利。我在文档页面上没有看到任何提及此方法的内容

下面的代码对我来说很好。如果您已经实现了自己的表模型,那么它可能没有正确地触发通知

import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

public class TableTest {

    public static void main(String[] args) throws InterruptedException {
        JFrame f = new JFrame();

        DefaultTableModel m = new DefaultTableModel();
        JTable t = new JTable(m);

        f.add(new JScrollPane(t), BorderLayout.CENTER);
        f.setVisible(true);
        f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        f.pack();
        m.addColumn("A");
        m.addRow(new String[]{"A1"});

        Thread.sleep(1000);

        m.addColumn("B");
        m.addRow(new String[]{"A2", "B2"});     
    }
}

我不知道你想做什么,但是,我认为设置桌子的模型总是更好的。只有在编写电子表格或类似文件时,才可以编写按钮或上下文菜单来添加新的列或行。我的意思是,您应该定义标题并调用方法
defaultTableModel.setColumnIdentifiers(Object[]newIdentifiers)
。舒尔的newIdentifiers对象数组是一个字符串数组。 这样做只是为了向用户显示数据而添加数据行


希望有帮助

您是否有可以共享的代码示例?您是在编写自己的
TableModel
,还是在使用
DefaultTableModel
?哦,我试图使用AbstractTableModel,因为oracle教程似乎推荐它。使用,它完全可以,并且有您想要的方法:)好的。非常感谢。我会删除此问题以避免尴尬,但我相信它会帮助其他遇到与我相同问题的人。工作正常,由于其他人的帮助已经找到解决方案,但此代码示例将帮助其他人避免被Oracle关于此主题的教程误导。Oracle的教程如何误导?