将组件添加到两个不同的JTabbedPanes

时间:2010-05-05 20:10:03

标签: java swing jtabbedpane

我有LinkedList Components,我想将其中的每一个添加到两个不同的JTabbedPanes中。出于某种原因,Swing只让我把每个组件放到一个或另一个组件中。我正在使用的代码如下:

/* The two tab panes */
JTabbedPane leftTabs = new JTabbedPane();
JTabbedPane rightTabs = new JTabbedPane();

for (int i=0; i<tabPanes.size(); i++) {
    rightTabs.add(tabPanes.get(i));
    leftTabs.add(tabPanes.get(i));
}

我最后提到的add电话是有效的电话;如果我最后添加到leftTabs,则rightTabs结束为空,反之亦然。

有关如何使这项工作的任何想法?谢谢!

1 个答案:

答案 0 :(得分:5)

组件只能有一个父组件,因此您无法将其添加到两个不同的选项卡中。

但是可以共享组件的模型。例如:

JTextField textField1 = new JTextField();
JTextField textField2 = new JTextField();
textField2.setDocument( textField1.getDocument() );

所以你要弄清楚如何共享模型,而不是组件。