|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||
java.lang.Object
|
+--javax.swing.plaf.ComponentUI
|
+--javax.swing.plaf.TreeUI
|
+--javax.swing.plaf.basic.BasicTreeUI
|
+--javax.swing.plaf.metal.MetalTreeUI
TreeUIの Metal Look & Feel による実装です。
MetalTreeUI がノード間の間隔と輪郭を可視的に描画する方法を構成できるようにします。次のヒントをサポートします。
| 斜線 | 子と親を結ぶ線が描かれる。ルートノードの処理については、 JTree.setRootVisible(boolean)および JTree.setShowsRootHandles(boolean) 参照
|
| 水平線 | ルートノードの子を区分する水平線が描かれる |
| 線なし | ノード間に視覚的な指示を与える線を描かない |
通常、JTree から TreeUI を取得して MetalTreeUI のインスタンスにキャストするのは実際的な方法ではないので、クライアントプロパティ JTree.lineStyle を使ってこのプロパティを有効にします。たとえば、Horizontal スタイルに切り替えるには、以下を実行します。tree.putClientProperty("JTree.lineStyle", "Horizontal");
デフォルトは Angled です。
| 入れ子クラスの概要 |
| フィールドの概要 |
| コンストラクタの概要 | |
MetalTreeUI()
|
|
| メソッドの概要 | |
static ComponentUI |
createUI(JComponent x)
指定されたコンポーネントの UI 委譲のインスタンスを返します。 |
protected void |
decodeLineStyle(Object lineStyleFlag)
クライアントプロパティに渡された文字列と内部表現 (currently および int) との間の変換を行います。 |
protected int |
getHorizontalLegBuffer()
ノード間の脚の水平要素は、デフォルトでは子ノードの左側の右で始まります。 |
void |
installUI(JComponent c)
Look & Feel に適した、指定されたコンポーネントを構成します。 |
protected boolean |
isLocationInExpandControl(int row,
int rowLevel,
int mouseX,
int mouseY)
|
void |
paint(Graphics g,
JComponent c)
Look &Feel に適した、指定されたコンポーネントをペイントします。 |
protected void |
paintHorizontalPartOfLeg(Graphics g,
Rectangle clipBounds,
Insets insets,
Rectangle bounds,
TreePath path,
int row,
boolean isExpanded,
boolean hasBeenExpanded,
boolean isLeaf)
脚の水平部分をペイントします。 |
protected void |
paintHorizontalSeparators(Graphics g,
JComponent c)
|
protected void |
paintVerticalPartOfLeg(Graphics g,
Rectangle clipBounds,
Insets insets,
TreePath path)
脚の垂直部分をペイントします。 |
void |
uninstallUI(JComponent c)
installUI 時に、指定されたコンポーネントで実行した構成を取り消します。 |
| クラス javax.swing.plaf.ComponentUI から継承したメソッド |
contains, getAccessibleChild, getAccessibleChildrenCount, update |
| クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| コンストラクタの詳細 |
public MetalTreeUI()
| メソッドの詳細 |
public static ComponentUI createUI(JComponent x)
ComponentUI の記述: createUI メソッドを提供して、その UI 委譲のサブクラスのインスタンスを返す必要があります。UI 委譲のサブクラスが状態なしの場合、複数のコンポーネントに共有されるインスタンスを返します。UI 委譲が状態ありの場合、コンポーネントごとに新しいインスタンスを返す必要があります。このメソッドは呼び出してはいけないため、そのデフォルト実装はエラーをスローします。
protected int getHorizontalLegBuffer()
BasicTreeUI の記述:
BasicTreeUI 内の getHorizontalLegBufferpublic void installUI(JComponent c)
ComponentUI の記述: ComponentUI インスタンスが、指定されたコンポーネントの UI 委譲としてインストールされているときに呼び出されます。このメソッドは、以下を含む Look & Feel 用のコンポーネントを完全に構成する必要があります。
LayoutManager をインストールする
PropertyChangeListener をコンポーネントに作成またはインストールする
BasicTreeUI 内の installUIc - UI 委譲がインストールされているコンポーネントComponentUI.uninstallUI(javax.swing.JComponent),
JComponent.setUI(javax.swing.plaf.ComponentUI),
JComponent.updateUI()public void uninstallUI(JComponent c)
ComponentUI の記述: installUI 時に、指定されたコンポーネントで実行した構成を取り消します。このメソッドは、指定されたコンポーネントの UI 委譲としての UIComponent インスタンスが削除されているときに呼び出されます。このメソッドは、installUI によって実行された構成を元に戻す必要があります。この場合、JComponent インスタンスをクリーンな状態 (余分なリスナーや、Look & Feel 固有のプロパティオブジェクトが残らないように) にするよう十分注意してください。手順には次のものがあります。
BasicTreeUI 内の uninstallUIc - この UI 委譲が削除されるコンポーネント。この引数はしばしば無視されるが、UI オブジェクトが状態なしで複数のコンポーネントに共有される場合に使用されることがあるComponentUI.installUI(javax.swing.JComponent),
JComponent.updateUI()protected void decodeLineStyle(Object lineStyleFlag)
protected boolean isLocationInExpandControl(int row,
int rowLevel,
int mouseX,
int mouseY)
public void paint(Graphics g,
JComponent c)
ComponentUI の記述: ComponentUI.update メソッドから、指定されたコンポーネントがペイントされるときに呼び出されます。サブクラスは、このメソッドをオーバーライドして、指定された Graphics オブジェクトを使ってコンポーネントの内容を描画する必要があります。
BasicTreeUI 内の paintg - ペイント先となる Graphics コンテキストc - ペイントされるコンポーネント。この引数はしばしば無視されるが、UI オブジェクトが状態なしで複数のコンポーネントに共有される場合に使用されることがあるComponentUI.update(java.awt.Graphics, javax.swing.JComponent)
protected void paintHorizontalSeparators(Graphics g,
JComponent c)
protected void paintVerticalPartOfLeg(Graphics g,
Rectangle clipBounds,
Insets insets,
TreePath path)
BasicTreeUI の記述: clipBounds や insets を変更することは許されません。
BasicTreeUI 内の paintVerticalPartOfLeg
protected void paintHorizontalPartOfLeg(Graphics g,
Rectangle clipBounds,
Insets insets,
Rectangle bounds,
TreePath path,
int row,
boolean isExpanded,
boolean hasBeenExpanded,
boolean isLeaf)
BasicTreeUI の記述: clipBounds や insets を変更することは許されません。
注: ルートが可視でない場合、parentRow は -1 になることがあります。
BasicTreeUI 内の paintHorizontalPartOfLeg
|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||
Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.