Swing/TabAreaBackground のバックアップの現在との差分(No.8)
- category: swing folder: TabAreaBackground title: JTabbedPaneのタブエリア背景色などをテスト tags: [JTabbedPane, UIManager, MetalLookAndFeel] author: aterai pubdate: 2011-01-03T14:25:13+09:00 description: MetalLookAndFeelのJTabbedPaneで、タブエリアの背景色などを変更するテストをしています。 image:
概要
MetalLookAndFeel
のJTabbedPane
で、タブエリアの背景色などを変更するテストをしています。
Screenshot
Advertisement
サンプルコード
UIManager.put("TabbedPane.shadow", Color.GRAY);
UIManager.put("TabbedPane.darkShadow", Color.GRAY);
UIManager.put("TabbedPane.light", Color.GRAY);
UIManager.put("TabbedPane.highlight", Color.GRAY);
UIManager.put("TabbedPane.tabAreaBackground", Color.GRAY);
UIManager.put("TabbedPane.unselectedBackground", Color.GRAY);
UIManager.put("TabbedPane.background", Color.GRAY);
UIManager.put("TabbedPane.foreground", Color.WHITE);
UIManager.put("TabbedPane.focus", Color.WHITE);
UIManager.put("TabbedPane.contentAreaColor", Color.WHITE);
UIManager.put("TabbedPane.selected", Color.WHITE);
UIManager.put("TabbedPane.selectHighlight", Color.WHITE);
#spandel
UIManager.put("TabbedPane.borderHightlightColor", Color.WHITE);
#spanend
#spanadd
// UIManager.put("TabbedPane.borderHighlightColor", Color.WHITE);
#spanend
#spanadd
// Maybe typo but defined in MetalTabbedPaneUI
#spanend
#spanadd
UIManager.put("TabbedPane.borderHightlightColor", Color.WHITE);
#spanend
View in GitHub: Java, Kotlin解説
上記のサンプルでは、UIManager.put("TabbedPane.unselectedBackground", Color.GREEN);
などを利用して、MetalLookAndFeel
でのタブエリアの背景色などを変更することができます。
上記のサンプルでは、UIManager.put("TabbedPane.unselectedBackground", Color.GREEN);
などを利用してMetalLookAndFeel
でのタブエリアの背景色などを変更可能です。
- メモ
-
JPanel
タブ内に配置されているJCheckBox
で、JTabbedPane
を不透明に設定可能 -
JPanel
タブ内に配置されているJComboBox
で、TabbedPane.tabAreaBackground
などのキーを指定し、その色の変更が可能
-
- タブ文字色は、
JTabbedPane#setForegroundAt(...)
メソッドを使用して切り替え -
BasicLookAndFeel
、MetalLookAndFeel
でのみ有効 -
JPanel
タブ内に配置されているJCheckBox
でJTabbedPane
を不透明に設定可能 -
JPanel
タブ内に配置されているJComboBox
でTabbedPane.tabAreaBackground
などのキーを指定し、その色の変更が可能 - タブ文字色は
JTabbedPane#setForegroundAt(...)
メソッドを使用して切り替え可能 -
TabbedPane.borderHightlightColor
はおそらくTabbedPane.borderHighlightColor
の書き間違い- 現状(
Java 11
で確認)のMetalTabbedPaneUI
ではTabbedPane.borderHightlightColor
が定義されているため、こちらで色変更する必要がある
- 現状(
参考リンク
- JTabbedPaneの選択文字色を変更
- JTabbedPaneのタブ文字列をハイライト
- JDK-8078269 JTabbedPane UI Property TabbedPane.tabAreaBackground no longer works - Java Bug System