JavaTM Platform
Standard Ed. 6

javax.swing.plaf.basic
クラス BasicLookAndFeel

java.lang.Object
  上位を拡張 javax.swing.LookAndFeel
      上位を拡張 javax.swing.plaf.basic.BasicLookAndFeel
すべての実装されたインタフェース:
Serializable
直系の既知のサブクラス:
MetalLookAndFeel, SynthLookAndFeel

public abstract class BasicLookAndFeel
extends LookAndFeel
implements Serializable

Swing の Look & Feel の作成に使用する基底クラスです。

BasicLookAndFeel が提供する各 ComponentUI は、その動作をデフォルトテーブルから取得します。特に明記されていないかぎり、このパッケージの各 ComponentUI 実装には、使用するデフォルトのセットがドキュメント化されています。特に明記されていないかぎり、デフォルトは installUI の呼び出し時にインストールされます。デフォルトのインストールは、LookAndFeel に記載されている推奨事項に従って行います。

警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。JDK Version 1.4 以降、すべての JavaBeans の長期間の運用サポートは、java.beans パッケージに追加されています。詳細は、XMLEncoder を参照してください。


コンストラクタの概要
BasicLookAndFeel()
           
 
メソッドの概要
protected  Action createAudioAction(Object key)
          サウンドの再生に使用する Action を作成し、返します。
protected  ActionMap getAudioActionMap()
          この Look & Feel のオーディオアクションを含む ActionMap を返します。
 UIDefaults getDefaults()
          Look & Feel のデフォルトを返します。
protected  void initClassDefaults(UIDefaults table)
          uiClassID と UI クラスの完全指定名のマッピングを格納した table を生成します。
protected  void initComponentDefaults(UIDefaults table)
          基本 Look & Feel のデフォルトが格納された table を生成します。
 void initialize()
          Look & Feel を初期化します。
protected  void initSystemColorDefaults(UIDefaults table)
          システムカラーの table を生成します。
protected  void loadSystemColors(UIDefaults table, String[] systemColors, boolean useNative)
          systemColors 内に 名前と色 のペアが入っている table を生成します。
protected  void playSound(Action audioAction)
          必要に応じて、audioAction 上で actionPerformed を呼び出して、サウンドを再生します。
 void uninitialize()
          Look & Feel の初期化を解除します。
 
クラス javax.swing.LookAndFeel から継承されたメソッド
getDescription, getDesktopPropertyValue, getDisabledIcon, getDisabledSelectedIcon, getID, getLayoutStyle, getName, getSupportsWindowDecorations, installBorder, installColors, installColorsAndFont, installProperty, isNativeLookAndFeel, isSupportedLookAndFeel, loadKeyBindings, makeComponentInputMap, makeIcon, makeInputMap, makeKeyBindings, provideErrorFeedback, toString, uninstallBorder
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

コンストラクタの詳細

BasicLookAndFeel

public BasicLookAndFeel()
メソッドの詳細

getDefaults

public UIDefaults getDefaults()
Look & Feel のデフォルトを返します。返される UIDefaults は、initClassDefaultsinitSystemColorDefaults、および initComponentDefaults をこの順番に呼び出すことによって生成されます。

このメソッドは public メソッドですが、常に、任意の Look & Feel が現在の Look & Feel として設定され、initialize が呼び出されたあと、UIManager によって呼び出されるようにしてください。

オーバーライド:
クラス LookAndFeel 内の getDefaults
戻り値:
Look & Feel のデフォルト
関連項目:
initClassDefaults(javax.swing.UIDefaults), initSystemColorDefaults(javax.swing.UIDefaults), initComponentDefaults(javax.swing.UIDefaults)

initialize

public void initialize()
Look & Feel を初期化します。このメソッドは public メソッドですが、常に、任意の Look & Feel が現在の Look & Feel としてインストールされたときに、UIManager によって呼び出されるようにしてください。このメソッドは、UIManagergetDefaults を呼び出す前に呼び出されます。このメソッドは、Look & Feel のあらゆる初期化を実行するためのメソッドです。サブクラスは、static 初期化子ではなく、このメソッドで必要な 1 回かぎりの設定をすべて実行します。 Look & Feel クラスのオブジェクトは、isSupportedLookAndFeel()false を返すことを確認するためにだけロードされる場合があるからです。

オーバーライド:
クラス LookAndFeel 内の initialize
関連項目:
LookAndFeel.uninitialize(), UIManager.setLookAndFeel(javax.swing.LookAndFeel)

uninitialize

public void uninitialize()
Look & Feel の初期化を解除します。このメソッドは public メソッドですが、常に、Look & Feel がアンインストールされたときに、UIManager によって呼び出されるようにしてください。たとえば、UIManager.setLookAndFeel は、Look & Feel の変更時にこのメソッドを呼び出します。

サブクラスは、このメソッドでいくつかのリソースを解放できます。

オーバーライド:
クラス LookAndFeel 内の uninitialize
関連項目:
LookAndFeel.initialize(), UIManager.setLookAndFeel(javax.swing.LookAndFeel)

initClassDefaults

protected void initClassDefaults(UIDefaults table)
uiClassID と UI クラスの完全指定名のマッピングを格納した table を生成します。個々の uiClassID の値は、「javax.swing.plaf.basic.Basic」+「uiClassID」 になります。たとえば、uiClassID TreeUI の値は javax.swing.plaf.basic.BasicTreeUI です。

パラメータ:
table - エントリが追加される UIDefaults インスタンス
例外:
NullPointerException - tablenull の場合
関連項目:
LookAndFeel, getDefaults()

initSystemColorDefaults

protected void initSystemColorDefaults(UIDefaults table)
システムカラーの table を生成します。これにより、名前と色 のペアから成る配列が作成され、loadSystemColors が呼び出されます。

名前は、SystemColor クラス内の任意の static SystemColor フィールドの名前に対応する String です。名前と色のペアは、このような SystemColor フィールドごとに作成されます。

color は、Color.decode の認識どおり、16 進 String に対応しています。たとえば、「desktop」と「#005C5C」名前と色 のペアがあるとします。これは、SystemColor フィールドの desktop (色の値は new Color(0x005C5C)) に対応しています。

次に、名前と色 のペアを 2 つ示します。  

   String[] nameColorPairs = new String[] {
          "desktop", "#005C5C",
    "activeCaption", "#000080" };
   loadSystemColors(table, nameColorPairs, isNativeLookAndFeel());
 
以前に述べたように、このコードは、指定された table および 名前と色 のペアから成る配列により、loadSystemColors を呼び出します。loadSystemColors の最後の引数は、SystemColor 内のフィールドの値を使用するかどうかを示します。このメソッドは、loadSystemColors の最後の引数として isNativeLookAndFeel() の値を渡します。

パラメータ:
table - 値が追加される UIDefaults オブジェクト
例外:
NullPointerException - tablenull の場合
関連項目:
SystemColor, getDefaults(), loadSystemColors(javax.swing.UIDefaults, java.lang.String[], boolean)

loadSystemColors

protected void loadSystemColors(UIDefaults table,
                                String[] systemColors,
                                boolean useNative)
systemColors 内に 名前と色 のペアが入っている table を生成します。systemColors の形式の詳細は、initSystemColorDefaults(UIDefaults) を参照してください。

systemColors 内の 名前と色 のペアごとに、table にエントリが追加されます。エントリキーは、名前と色 のペアの 名前 部分になります。

エントリの値は、名前と色 のペアの 部分に対応します。エントリの値は、次のどちらかの方法で計算されます。どちらの方法でも、値は常に ColorUIResource です。

useNativefalse の場合、は、Color.decodeStringColor に変換することによって作成されます。decodeString から Color への変換が実行できない (NumberFormatException がスローされる) 場合、黒の ColorUIResource が使用されます。

useNativetrue の場合、color は、名前と色 のペアの 名前 部分に指定された名前を持つ、SystemColor 内のフィールドの値になります。フィールドが有効でない場合、黒の ColorUIResource が使用されます。

パラメータ:
table - 値が追加される UIDefaults オブジェクト
systemColors - 名前と色 のペアから成る配列 (initSystemColorDefaults(UIDefaults) に記述されているとおり)
useNative - 色を SystemColorColor.decode のどちらから取得するか
例外:
NullPointerException - systemColorsnull の場合、systemColors が空でなく tablenull の場合、名前と色 のペアに null の名前が含まれる場合、または useNativefalse で、名前と色 のペアに null が含まれる場合
ArrayIndexOutOfBoundsException - useNativefalsesystemColors.length が奇数の場合
関連項目:
initSystemColorDefaults(javax.swing.UIDefaults), SystemColor, Color.decode(String)

initComponentDefaults

protected void initComponentDefaults(UIDefaults table)
基本 Look & Feel のデフォルトが格納された table を生成します。

パラメータ:
table - 値が追加される UIDefaults
例外:
NullPointerException - tablenull の場合

getAudioActionMap

protected ActionMap getAudioActionMap()
この Look & Feel のオーディオアクションを含む ActionMap を返します。

この ActionMap には、聴覚信号をレンダリングする機能を組み入れた Actions が含まれます。これらの聴覚信号は、エンドユーザーが知っておくと便利なユーザーおよびシステムアクティビティー (ダイアログボックスの表示など) にマップされます。

適切なときに、ComponentUIActionMap から Action を取得し、playSound に渡します。

このメソッドは、まずキーとして AuditoryCues.actionMap を使用して、デフォルトから ActionMap を検索します。

値が null 以外 の場合、その値が返されます。デフォルトの AuditoryCues.actionMap の値が null で、デフォルトの AuditoryCues.cueList の値が null 以外 である場合、ActionMapUIResource が作成されます。値の生成は、AuditoryCues.cueList 配列の各要素を反復し、createAudioAction() を呼び出して各要素の Action を作成することによって行われます。結果として得られる Action は、配列要素をキーとして利用することにより、ActionMapUIResource に配置されます。たとえば、AuditoryCues.cueList 配列が単一の要素の audioKey を含む場合、ActionMapUIResource が作成され、actionMap.put(cueList[0], createAudioAction(cueList[0])) によって生成されます。

デフォルトの AuditoryCues.actionMap の値が null で、デフォルトの AuditoryCues.cueList の値が null である場合、空の ActionMapUIResource が作成されます。

戻り値:
聴覚信号を再生する Action を含む ActionMap
例外:
ClassCastException - デフォルトの AuditoryCues.actionMap の値が ActionMap でないか、デフォルトの AuditoryCues.cueList の値が Object[] でない場合
導入されたバージョン:
1.4
関連項目:
createAudioAction(java.lang.Object), playSound(Action)

createAudioAction

protected Action createAudioAction(Object key)
サウンドの再生に使用する Action を作成し、返します。

key の値が null 以外 の場合、デフォルトの値とキー key を使って Action が作成されます。値は、Action 上で actionPerformed が呼び出されたときにロードされるサウンドリソースを識別します。サウンドリソースは、getClass().getResourceAsStream() によって byte[] にロードされます。

パラメータ:
key - オーディオアクションを識別するキー
戻り値:
ソースの再生に使用する Actionkeynull の場合は null
導入されたバージョン:
1.4
関連項目:
playSound(Action)

playSound

protected void playSound(Action audioAction)
必要に応じて、audioAction 上で actionPerformed を呼び出して、サウンドを再生します。actionPerformed メソッドは、AuditoryCues.playList のデフォルト値が audioAction の名前と同等の String エントリを含む null 以外Object[] である場合に呼び出されます。

パラメータ:
audioAction - システム、または発生中のユーザーアクティビティーに関連するオーディオの描画方法を知っている Action。null 値は無視される
例外:
ClassCastException - audioActionnull 以外 で、デフォルトの AuditoryCues.playList の値が Object[] でない場合
導入されたバージョン:
1.4

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。