| 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjavax.swing.LookAndFeel
javax.swing.plaf.basic.BasicLookAndFeel
public abstract class BasicLookAndFeel
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 の初期化を解除します。 | 
| クラス java.lang.Object から継承されたメソッド | 
|---|
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait | 
| コンストラクタの詳細 | 
|---|
public BasicLookAndFeel()
| メソッドの詳細 | 
|---|
public UIDefaults getDefaults()
UIDefaults は、initClassDefaults、initSystemColorDefaults、および initComponentDefaults をこの順番に呼び出すことによって生成されます。
 
このメソッドは public メソッドですが、常に、任意の Look & Feel が現在の Look & Feel として設定され、initialize が呼び出されたあと、UIManager によって呼び出されるようにしてください。
LookAndFeel 内の getDefaultsinitClassDefaults(javax.swing.UIDefaults), 
initSystemColorDefaults(javax.swing.UIDefaults), 
initComponentDefaults(javax.swing.UIDefaults)public void initialize()
UIManager によって呼び出されるようにしてください。このメソッドは、UIManager が getDefaults を呼び出す前に呼び出されます。このメソッドは、Look & Feel のあらゆる初期化を実行するためのメソッドです。サブクラスは、static 初期化子ではなく、このメソッドで必要な 1 回かぎりの設定をすべて実行します。 Look & Feel クラスのオブジェクトは、isSupportedLookAndFeel() が false を返すことを確認するためにだけロードされる場合があるからです。
LookAndFeel 内の initializeLookAndFeel.uninitialize(), 
UIManager.setLookAndFeel(javax.swing.LookAndFeel)public void uninitialize()
UIManager によって呼び出されるようにしてください。たとえば、UIManager.setLookAndFeel は、Look & Feel の変更時にこのメソッドを呼び出します。
 サブクラスは、このメソッドでいくつかのリソースを解放できます。
LookAndFeel 内の uninitializeLookAndFeel.initialize(), 
UIManager.setLookAndFeel(javax.swing.LookAndFeel)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 - table が null の場合LookAndFeel, 
getDefaults()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 - table が null の場合SystemColor, 
getDefaults(), 
loadSystemColors(javax.swing.UIDefaults, java.lang.String[], boolean)
protected void loadSystemColors(UIDefaults table,
                                String[] systemColors,
                                boolean useNative)
systemColors 内に 名前と色 のペアが入っている table を生成します。systemColors の形式の詳細は、initSystemColorDefaults(UIDefaults) を参照してください。
 
systemColors 内の 名前と色 のペアごとに、table にエントリが追加されます。エントリキーは、名前と色 のペアの 名前 部分になります。
 
エントリの値は、名前と色 のペアの 色 部分に対応します。エントリの値は、次のどちらかの方法で計算されます。どちらの方法でも、値は常に ColorUIResource です。
 
useNative が false の場合、色は、Color.decode で String を Color に変換することによって作成されます。decode で String から Color への変換が実行できない (NumberFormatException がスローされる) 場合、黒の ColorUIResource が使用されます。
 
useNative が true の場合、color は、名前と色 のペアの 名前 部分に指定された名前を持つ、SystemColor 内のフィールドの値になります。フィールドが有効でない場合、黒の ColorUIResource が使用されます。
table - 値が追加される UIDefaults オブジェクトsystemColors - 名前と色 のペアから成る配列 (initSystemColorDefaults(UIDefaults) に記述されているとおり)useNative - 色を SystemColor と Color.decode のどちらから取得するか
NullPointerException - systemColors が null の場合、systemColors が空でなく table が null の場合、名前と色 のペアに null の名前が含まれる場合、または useNative が false で、名前と色 のペアに null の 色 が含まれる場合
ArrayIndexOutOfBoundsException - useNative が false で systemColors.length が奇数の場合initSystemColorDefaults(javax.swing.UIDefaults), 
SystemColor, 
Color.decode(String)protected void initComponentDefaults(UIDefaults table)
table を生成します。
table - 値が追加される UIDefaults
NullPointerException - table が null の場合protected ActionMap getAudioActionMap()
ActionMap を返します。
 
この ActionMap には、聴覚信号をレンダリングする機能を組み入れた Actions が含まれます。これらの聴覚信号は、エンドユーザーが知っておくと便利なユーザーおよびシステムアクティビティー (ダイアログボックスの表示など) にマップされます。
 
適切なときに、ComponentUI は ActionMap から 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[] でない場合createAudioAction(java.lang.Object), 
playSound(Action)protected Action createAudioAction(Object key)
Action を作成し、返します。
 
key の値が null 以外 の場合、デフォルトの値とキー key を使って Action が作成されます。値は、Action 上で actionPerformed が呼び出されたときにロードされるサウンドリソースを識別します。サウンドリソースは、getClass().getResourceAsStream() によって byte[] にロードされます。
key - オーディオアクションを識別するキー
Action。key が null の場合は nullplaySound(Action)protected void playSound(Action audioAction)
audioAction 上で actionPerformed を呼び出して、サウンドを再生します。actionPerformed メソッドは、AuditoryCues.playList のデフォルト値が audioAction の名前と同等の String エントリを含む null 以外 の Object[] である場合に呼び出されます。
audioAction - システム、または発生中のユーザーアクティビティーに関連するオーディオの描画方法を知っている Action。null 値は無視される
ClassCastException - audioAction が null 以外 で、デフォルトの AuditoryCues.playList の値が Object[] でない場合| 
 | JavaTM Platform Standard Ed. 6 | |||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。