TITLE:NimbusLookAndFeelのカラーパレット

Posted by aterai at 2012-07-30

NimbusLookAndFeelのカラーパレット

NimbusLookAndFeelのカラーパレットを変更します。

  • &jnlp;
  • &jar;
  • &zip;
NimbusColorPalette.png

サンプルコード

UIDefaults def = UIManager.getLookAndFeelDefaults();
def.put("nimbusOrange", new Color(255,220,35,200));

解説

  • 上:
    • Nimbus Look&Feel の Primary Colors の一つ(上記のサンプルではnimbusOrange)を変更して全体で色を変更

以下の一覧は、Nimbus Defaults (The Java™ Tutorials > Creating a GUI With JFC/Swing > Modifying the Look and Feel)より引用

KeyValuePreview
control#d6d9df (214,217,223)
info#f2f2bd (242,242,189)
nimbusAlertYellow#ffdc23 (255,220,35)
nimbusBase#33628c (51,98,140)
nimbusDisabledText#8e8f91 (142,143,145)
nimbusFocus#73a4d1 (115,164,209)
nimbusGreen#b0b332 (176,179,50)
nimbusInfoBlue#2f5cb4 (47,92,180)
nimbusLightBackground#ffffff (255,255,255)
nimbusOrange#bf6204 (191,98,4)
nimbusRed#a92e22 (169,46,34)
nimbusSelectedText#ffffff (255,255,255)
nimbusSelectionBackground#39698a (57,105,138)
text#000000 (0,0,0)
  • 下:
    • 指定した領域を塗りつぶすPainterを作成して、JProgressBar#putClientProperty("Nimbus.Overrides", d); で特定のコンポーネントの色を設定
UIDefaults d = new UIDefaults();
d.put("ProgressBar[Enabled].foregroundPainter", new Painter() {
  @Override public void paint(Graphics2D g, Object o, int w, int h) {
    g.setColor(new Color(100,250,120,50));
    g.fillRect(0,0,w-1,h-1);
    g.setColor(new Color(100,250,120,150));
    g.fillRect(3,h/2,w-5,h/2-2);
  }
});
progressbar.putClientProperty("Nimbus.Overrides", d);

参考リンク

コメント