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

标签 java swing jtabbedpane

我有一个 LinkedListComponents,我想将每个组件添加到两个不同的 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 最终为空,反之亦然。

关于如何让它工作的任何想法?谢谢!

最佳答案

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

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

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

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

关于java - 将组件添加到两个不同的 JTabbedPanes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2776425/

相关文章:

java - 如何在JtabbedPane中不显示选项卡标题?

java - 如何使用 ProgressMonitor 窗口而不失去对主 JFrame 的焦点?

java - 调用 setComponent() 后无法将面板添加到 jtabbedpane

Java swing如何动态设置应用程序背景

java - 不幸的 Java 异常 : java. lang.NoSuchMethodError

Java CardLayout .show() 不显示

java - 将数组的元素作为标签放置在 JButton 上

java - 在 JTabbedPane 中设置选项卡背景

java - 将 .class 文件加载到 jar 中?

Java:文件输出流(访问被拒绝)