---
category: swing
folder: SynchronizeTabSelection
title: JTabbedPaneのタブ選択を同期する
title-en: Synchronizing tab selection in JTabbedPane
tags: [JTabbedPane]
author: aterai
pubdate: 2026-01-19T00:12:40+09:00
description: JTabbedPaneのSingleSelectionModelを共有することでタブ選択が同期するよう設定します。
summary-jp: JTabbedPaneのSingleSelectionModelを共有することでタブ選択が同期するよう設定します。
summary-en: This sets the tab selection to be synchronized by sharing the JTabbedPane's SingleSelectionModel.
image: https://drive.google.com/uc?id=1pgpZL1iwyHIGLG6fNaeaFGLzjNv98iQ6
---
* Summary [#summary]
JTabbedPaneのSingleSelectionModelを共有することでタブ選択が同期するよう設定します。
`JTabbedPane`の`SingleSelectionModel`を共有することでタブ選択が同期するよう設定します。
// #en{{This sets the tab selection to be synchronized by sharing the JTabbedPane's SingleSelectionModel.}}

#download(https://drive.google.com/uc?id=1pgpZL1iwyHIGLG6fNaeaFGLzjNv98iQ6)

* Source Code Examples [#sourcecode]
#code(link){{
JTabbedPane tabs1 = new JTabbedPane();
tabs1.addTab("Java", makeEditor(makeJava1(), 36));
tabs1.addTab("Kotlin", makeEditor(makeKotlin1(), 36));

JTabbedPane tabs2 = new JTabbedPane();
tabs2.addTab("Java", makeEditor(makeJava2(), 160));
tabs2.addTab("Kotlin", makeEditor(makeKotlin2(), 160));
tabs2.setModel(tabs1.getModel());
}}

* Description [#description]
- タブ数が同じ`JTabbedPane`で`JTabbedPane#getModel()`で取得できる`SingleSelectionModel`を共有すると、複数の`JTabbedPane`間でのタブ選択が同期可能になる
-- `JTabbedPane`のタブ数が異なる場合で共有して選択タブを変更すると`IndexOutOfBoundsException`が発生する

* Reference [#reference]
- [[JScrollPaneのスクロールを同期>Swing/SynchronizedScroll]]

* Comment [#comment]
#comment
#comment