タブ付きペイン内のコンポーネントの周りにどれだけのスペースを設けるかは、ルック アンド フィール次第です。通常、これは、デスクトップのデフォルトに基づいて決定されます。JTabbedPane には、内部コンポーネントの周囲にインセットを設定するためのメソッドがありません。
これは、すべてのタブ付きペインに対してグローバルに設定できます(警告: MetalLookAndFeel で動作します。おそらくWindows L&F でも動作しますが、BasicLookAndFeel に基づいていない GTK や Nimbus ルック アンド フィールでは動作しないでしょう) 。これにより、VM 内のすべてのタブ付きペインの外観が変更されます。
UIManager.getDefaults().put("TabbedPane.contentBorderInsets", new Insets(0,0,0,0));
UIManager.getDefaults().put("TabbedPane.tabsOverlapBorder", true);
おそらく、JTabbedPane に EmptyBorder(0,0,0,0) があり、そこに配置するコンポーネントも同様であることを確認したいでしょう。
これがターゲット デスクトップで機能しない場合、代替手段は次のとおりです。
- タブ付きペインがネイティブ アプリケーションのタブ付きペインと異なって見えることを気にしない場合、(不快な) 別の方法は、独自の TabbedPaneUI を作成することです。
- このように表示する単一の JTabbedPane の UI デリゲートを MetalTabbedPaneUI またはこれらのプロパティに応答する他の UI デリゲートに設定します。