私はしばらく調べて、複数のパネルを JTabbedPane に追加しようとしても遊んでいました。
私の質問は、同じ Jpanel を複数の TabbedPanes に追加することは可能ですか? 私が試したすべての方法で、正しく機能していないようです。これがその仕組みです。
public MainGUI() {
JMenuBar menuBar = new JMenuBar();
setJMenuBar(menuBar);
JTabbedPane tabbedPane = new JTabbedPane(JTabbedPane.TOP);
getContentPane().add(tabbedPane, BorderLayout.CENTER);
JEditorPane instructionalEditorPane = new JEditorPane();
tabbedPane.addTab("Instructional", instructionalEditorPane);
JPanel codePanel = new JPanel();
JPanel drawPanel = new JPanel();
JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, codePanel, drawPanel);
splitPane.setResizeWeight(0.75);
tabbedPane.addTab("Code Panel", splitPane);
JEditorPane unifiedInstPane = new JEditorPane();
JPanel unifiedCodePanel = new JPanel();
JPanel unifiedDrawPanel = new JPanel();
JSplitPane unifiedSplitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, unifiedCodePanel, unifiedDrawPanel);
unifiedSplitPane.setResizeWeight(0.75);
JSplitPane unifiedPanel = new JSplitPane(JSplitPane.VERTICAL_SPLIT,unifiedInstPane, unifiedSplitPane);
unifiedPanel.setResizeWeight(0.40);
tabbedPane.addTab("Unified Tab", unifiedPanel);
}
私がやりたいことは、instructionalEditorPane と splitPane を複数の tabbedPanes に追加するだけですが、そうすると元の個々の tabbedPanes が失われます。必要に応じて、この方法で実行できますが、unifiedInstPane と instructionalEditorPane の両方に書き込み、それらを最新の状態に保つ必要があります。codePanel と drawPanels が埋め込まれた 2 つの splitPanes に対してもこれを行う必要があります。これにより、すべてのパネルを同期させることが難しくなります。
助言がありますか?