Добавьте компонент к двум различным JTabbedPanes - PullRequest
1 голос
/ 06 мая 2010

У меня есть 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 Ответ

5 голосов
/ 06 мая 2010

У компонента может быть только один родитель, поэтому вы не можете добавить его на две разные вкладки.

Однако модель компонента может быть общей. Например:

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

Так что вы как-то разбираетесь, как делиться моделями, а не компонентами.

...