-
- 既知のすべての実装クラス:
DefaultTreeModel
public interface TreeModelJTreeが使用するモデルです。JTreeとその関連クラスは、TreeModel内のノードを識別するためにTreePathを広範囲にわたって使用します。TreeModelで、同じ親の下の2つの異なるインデックスにある同じオブジェクト(equalsで比較されたもの)が返されると、結果として得られるTreePathオブジェクトも同様に等しいと見なされます。 一部の実装では、2つのTreePathが等しい場合、それらは同じノードと見なされることがあります。 この条件が満たされないと、ペイント問題やその他の異常な事態が発生する場合があります。 言い換えれば、特定の親に対するgetChildで同じObject (equalsで判定されたもの)が返された場合は問題が発生することがあるため、このような処理は行わないことをお勧めします。同様に、
JTreeとその関連クラスは、TreePathをMap内に配置します。 このため、ノードが2回要求された場合は、戻り値が等しく(equalsメソッドを使用)、hashCodeが同じである必要があります。カスタム実装の例を含むツリー・モデルの詳細については、「The Java Tutorial」の「How to Use Trees」を参照してください。
- 関連項目:
TreePath
-
-
メソッドのサマリー
すべてのメソッド インスタンス・メソッド 抽象メソッド 修飾子と型 メソッド 説明 voidaddTreeModelListener(TreeModelListener l)ツリーが変更されたあとに送信されたTreeModelEventのリスナーを追加します。ObjectgetChild(Object parent, int index)親の持つ子配列の、インデックスindexにあるparentの子を返します。intgetChildCount(Object parent)parentの子の数を返します。intgetIndexOfChild(Object parent, Object child)親の子のインデックスを返します。ObjectgetRoot()ツリーのルートを返します。booleanisLeaf(Object node)nodeが葉の場合trueを返します。voidremoveTreeModelListener(TreeModelListener l)以前にaddTreeModelListenerで追加されたリスナーを削除します。voidvalueForPathChanged(TreePath path, Object newValue)newValueへのpathによって識別される項目の値をユーザーが変更すると、メッセージとして送信されます。
-
-
-
メソッドの詳細
-
getRoot
Object getRoot()
ツリーのルートを返します。 ツリーにノードがない場合だけ、nullを返します。- 戻り値:
- ツリーのルート
-
getChild
Object getChild(Object parent, int index)
親の持つ子配列の、インデックスindexにあるparentの子を返します。parentは、このデータ・ソースからそれまでに取得されたノードである必要があります。indexがparentの有効なインデックス(つまり、index >= 0 & index < getChildCount (parent)である場合は、nullを返しません。- パラメータ:
parent- このデータ・ソースから取得された、ツリー内のノードindex- 返される子のインデックス- 戻り値:
- インデックス
indexにあるparentの子
-
getChildCount
int getChildCount(Object parent)
parentの子の数を返します。 ノードが葉の場合や、ノードが子を持たない場合は、0を返します。parentは、このデータ・ソースからそれまでに取得されたノードである必要があります。- パラメータ:
parent- このデータ・ソースから取得された、ツリー内のノード- 戻り値:
- ノード
parentの子の数
-
isLeaf
boolean isLeaf(Object node)
nodeが葉の場合trueを返します。nodeが子を持たない場合でも、このメソッドはfalseを返すことができます。 たとえば、ファイル・システムのディレクトリにファイルが入っていない場合、そのディレクトリを表すノードは葉でないだけでなく、子も持っていません。- パラメータ:
node- このデータ・ソースから取得された、ツリー内のノード- 戻り値:
nodeが葉の場合はtrue
-
valueForPathChanged
void valueForPathChanged(TreePath path, Object newValue)
newValueへのpathによって識別される項目の値をユーザーが変更すると、メッセージとして送信されます。newValueが本当に新しい値を意味する場合には、モデルはtreeNodesChangedイベントを送信しなければいけません。- パラメータ:
path- ユーザーが変更したノードへのパスnewValue- TreeCellEditorからの新しい値
-
getIndexOfChild
int getIndexOfChild(Object parent, Object child)
親の子のインデックスを返します。parentまたはchildのどちらかがnullの場合は、-1を返します。parentまたはchildのどちらかがこのツリー・モデルに属していない場合も、-1を返します。- パラメータ:
parent- このデータ・ソースから取得された、ツリー内のノードchild- 対象となるノード- 戻り値:
- 親の子のインデックス。
childまたはparentがnullであるか、このツリー・モデルに属していない場合は -1
-
addTreeModelListener
void addTreeModelListener(TreeModelListener l)
ツリーが変更されたあとに送信されたTreeModelEventのリスナーを追加します。- パラメータ:
l- 追加するリスナー- 関連項目:
removeTreeModelListener(javax.swing.event.TreeModelListener)
-
removeTreeModelListener
void removeTreeModelListener(TreeModelListener l)
以前にaddTreeModelListenerで追加されたリスナーを削除します。- パラメータ:
l- 削除するリスナー- 関連項目:
addTreeModelListener(javax.swing.event.TreeModelListener)
-
-