如何创建具有相同模型、颜色、字体和侦听器的 JTable 副本?

How to create a copy of a JTable with same model, color, font and listeners?

我正在制作一个需要使用很多 JTable 的程序。所以我需要多次克隆一个 JTable。克隆是指具有相同模型、相同 columnModel、相同字体大小、相同颜色等的副本。

我找到了

但问题是两者的文本是一样的。不是字体或颜色。

我也试过这个:-

JTable  t1 = new JTable(tm.getTable().getModel(), tm.getTable().getColumnModel());

但这也行不通。

我也试过:-

JTable ti = tm;

但这行得通。但问题是对 tm 所做的更改也会发生在 ti

有没有办法克隆一个 jtable 及其所有属性?

这样做:

JTable  t1 = new JTable(tm.getTable().getModel(), tm.getTable().getColumnModel());

然后,获取第一个 table 具有的每个 相关 属性,并将其分配给第二个 table。

例如:

t1.setFont(tm.getFont());
// And so on

您始终可以通过序列化深度克隆对象。查看 this 文章了解更多信息。这可能有点矫枉过正,但这由您决定。