Swing/SystemColor のバックアップの現在との差分(No.3)
#navi(contents-page-name): No such page: ST
FrontPage>Swing Tips?>ST/SystemColor?
ST/SystemColor?
2021-11-27 (土) 09:12:58
概要
Swing
コンポーネントの色をSystemColor
クラスから取得します。
SystemColor
Screenshot
Advertisement
サンプルコード
#spanend
#spanadd
Box box = Box.createVerticalBox();
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.desktop, "desktop"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.activeCaption, "activeCaption"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.inactiveCaption, "inactiveCaption"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.activeCaptionText, "activeCaptionText"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.inactiveCaptionText, "inactiveCaptionText"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.activeCaptionBorder, "activeCaptionBorder"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.inactiveCaptionBorder, "inactiveCaptionBorder"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.window, "window"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.windowText, "windowText"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.menu, "menu"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.menuText, "menuText"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.text, "text"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.textHighlight, "textHighlight"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.textText, "textText"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.textHighlightText, "textHighlightText"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.control, "control"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.controlLtHighlight, "controlLtHighlight"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.controlHighlight, "controlHighlight"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.controlShadow, "controlShadow"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.controlDkShadow, "controlDkShadow"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.controlText, "controlText"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.control, "control"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.scrollbar, "scrollbar"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.info, "info"));
#spanend
#spanadd
box.add(makeSystemColorPanel(SystemColor.infoText, "infoText"));
#spanend
#spanadd
View in GitHub: Java, Kotlin解説
各プラットフォームのデスクトップデザインに対応したシステムカラーは、SystemColor
クラスのstatic
フィールドにまとめて定義されています。例えばWindows
プラットフォームでデスクトップのカスタマイズでテーマなどを変更すると、このSystemColor
も動的にその変更に追従します。
Color color = SystemColor.textHighlightText;
-
LookAndFeel
を変更してもSystemColor
は変化しない -
GTKLookAndFeel
がシステムデフォルトになる環境ではSystemColor
を取得不可