ナビゲーション・リンクをスキップ
Java(tm) Platform
Standard Edition 8

パッケージ javax.swing.plaf.nimbus

クロス・プラットフォームNimbus Look & Feelに従って構築されたユーザー・インタフェース・オブジェクトを提供します。

参照: 説明

パッケージjavax.swing.plaf.nimbusの説明

クロス・プラットフォームNimbus Look & Feelに従って構築されたユーザー・インタフェース・オブジェクトを提供します。

Nimbusは、Painterインタフェースのインスタンスを使用してコンポーネントをペイントします。各Swingコンポーネントについて、フォアグラウンドとバックグラウンドのPainterが関連付けられており、各種のコンポーネント状態に対して複数のペインタがある場合があります。

UIDefaultsテーブルを変更することによって、ペインタを含む多数のプロパティをカスタマイズできます。次はその例です。

    UIManager.put("ProgressBar.tileWidth", myTileWidth);
    UIManager.put("ProgressBar[Enabled].backgroundPainter", myBgPainter);
    UIManager.put("ProgressBar[Enabled].foregroundPainter", myFgPainter);

また、コンポーネントごとのカスタマイズも可能です。コンポーネントを描画する場合、Nimbusは「Nimbus.Overrides」という名前のクライアント・プロパティをチェックします。このプロパティの値は、UIDefaultsのインスタンスであるべきです。このテーブルの設定はUIManagerの設定をオーバーライドしますが、その特定のコンポーネントのインスタンスのみを対象とします。オプションのクライアント・プロパティであるBoolean型の「Nimbus.Overrides.InheritDefaults」は、オーバーライドする設定がデフォルト設定とマージされるべきか(true)、置き換えるべきか(false)を指定します。デフォルトでは次のようにマージされます。

    JProgressBar bar = new JProgressBar();
    UIDefaults overrides = new UIDefaults();
    overrides.put("ProgressBar.cycleTime", 330);
    ...
    bar.putClientProperty("Nimbus.Overrides", overrides);
    bar.putClientProperty("Nimbus.Overrides.InheritDefaults", false);

Nimbusの色は原色のコア・セットから派生されます。また、原色から派生され、その他の派生される色の基本色として機能する等和色もあります。派生メカニズムにより実行時にカスタマイズが可能です。つまり、原色または等和色が変更されると、その色から派生したすべての色が自動的に更新されます。メソッドNimbusLookAndFeel.getDerivedColor(java.lang.String, float, float, float, int, boolean)を使用して派生した色を作成できます。

これらのクラスは、対応するLookAndFeelクラスがインストールされている間(UIManager.setLookAndFeel(new XXXLookAndFeel()))に使用するように設計されています。別のLookAndFeelがインストールされている間に使用すると、例外を含む予期しない結果を引き起こすことがあります。さらに、JComponentの対応するComponentUIを更新しないでUIManagerが管理するLookAndFeelを変更すると、違う色が出力されるなど予期しない結果を引き起こすことがあるので、通常はお勧めしません。

注: ほとんどのSwing APIはスレッドに対して安全ではありません。詳細は、「The Java Tutorial」の「Concurrency in Swing」セクションを参照してください。

導入されたバージョン:
1.7
ナビゲーション・リンクをスキップ
Java(tm) Platform
Standard Edition 8

バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.