|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
ComponentUI の委譲によって作成されたオブジェクトをマークするために使用されます。ComponentUI.installUI() メソッドおよび ComponentUI.uninstallUI() メソッドは、このインタフェースを使って、プロパティの値がオーバーライドされたかどうかを判定することができます。たとえば、JList の cellRenderer プロパティは、その初期値が null の場合に限り BasicListUI.installUI() によって初期化されます。
if (list.getCellRenderer() == null) {
list.setCellRenderer((ListCellRenderer)(UIManager.get("List.cellRenderer")));
}
uninstallUI() のときに、プロパティの値が UIResource のインスタンスである場合は、プロパティを null にリセットします。
if (list.getCellRenderer() instanceof UIResource) {
list.setCellRenderer(null);
}
このパターンは、java.awt.Component のプロパティのフォント、フォアグラウンド、およびバックグラウンド以外のすべてのプロパティに適用されます。もし、これらのプロパティのうちの 1 つが初期化されていない場合、あるいは明示的に null に設定されている場合には、そのコンテナが値を提供します。こうした理由により、コンポーネントの Look & Feel を動的に変更するために installUI() が呼び出された場合、"== null" を信頼することはできません。したがって、installUI() 実行時には、現在の値が UIResource であるかどうかを調べます。
if (!(list.getFont() instanceof UIResource)) {
list.setFont(UIManager.getFont("List.font"));
}
ComponentUI
|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.