public class DefaultTreeModel extends Object implements Serializable, TreeModel
警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースとの互換性がなくなる予定です。現在の直列化のサポートは、短期間の格納や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。1.4 以降、すべての JavaBeansTM 用の長期間の格納サポートが java.beans
パッケージに追加されています。XMLEncoder
を参照してください。
修飾子と型 | フィールドと説明 |
---|---|
protected boolean |
asksAllowsChildren
ノードが葉ノードかどうかを
isLeaf メソッドが判断する方法を決定します。 |
protected EventListenerList |
listenerList
リスナーです。
|
protected TreeNode |
root
ツリーのルートです。
|
コンストラクタと説明 |
---|
DefaultTreeModel(TreeNode root)
どのノードでも子を持てるツリーを作成します。
|
DefaultTreeModel(TreeNode root, boolean asksAllowsChildren)
どのノードでも子を持てるかどうか、特定のノードだけが子を持てるかどうかを指定するツリーを作成します。
|
修飾子と型 | メソッドと説明 |
---|---|
void |
addTreeModelListener(TreeModelListener l)
ツリーが変更されたあとに送信された TreeModelEvent のリスナーを追加します。
|
boolean |
asksAllowsChildren()
葉ノードの判別方法を通知します。
|
protected void |
fireTreeNodesChanged(Object source, Object[] path, int[] childIndices, Object[] children)
このイベントタイプの通知対象として登録されているすべてのリスナーに通知します。
|
protected void |
fireTreeNodesInserted(Object source, Object[] path, int[] childIndices, Object[] children)
このイベントタイプの通知対象として登録されているすべてのリスナーに通知します。
|
protected void |
fireTreeNodesRemoved(Object source, Object[] path, int[] childIndices, Object[] children)
このイベントタイプの通知対象として登録されているすべてのリスナーに通知します。
|
protected void |
fireTreeStructureChanged(Object source, Object[] path, int[] childIndices, Object[] children)
このイベントタイプの通知対象として登録されているすべてのリスナーに通知します。
|
Object |
getChild(Object parent, int index)
親の持つ子配列の、インデックス index にある parent の子を返します。
|
int |
getChildCount(Object parent)
parent の子の数を返します。
|
int |
getIndexOfChild(Object parent, Object child)
親の子のインデックスを返します。
|
<T extends EventListener> |
getListeners(Class<T> listenerType)
このモデルに
FooListener として現在登録されているすべてのオブジェクトの配列を返します。 |
TreeNode[] |
getPathToRoot(TreeNode aNode)
ルートノードまでを含むノードの親を構築します。ただし、元のノードは返される配列内の最後の要素です。
|
protected TreeNode[] |
getPathToRoot(TreeNode aNode, int depth)
ルートノードまでを含むノードの親を構築します。ただし、元のノードは返される配列内の最後の要素です。
|
Object |
getRoot()
ツリーのルートを返します。
|
TreeModelListener[] |
getTreeModelListeners()
このモデルに登録された、すべてのツリーモデルリスナーからなる配列を返します。
|
void |
insertNodeInto(MutableTreeNode newChild, MutableTreeNode parent, int index)
このメソッドを呼び出して、親の子たちの位置インデックスに newChild を挿入します。
|
boolean |
isLeaf(Object node)
指定のノードが葉ノードかどうかを返します。
|
void |
nodeChanged(TreeNode node)
ユーザーがツリー内のノードの表現方法を変更したあとで、このメソッドを呼び出します。
|
void |
nodesChanged(TreeNode node, int[] childIndices)
childIndicies で識別される子をツリー内で表現する方法をユーザーが変更したあとで、このメソッドを呼び出します。
|
void |
nodeStructureChanged(TreeNode node)
ノードの子、その子の子、などのようにユーザーがノードの子孫を全体的に変更した場合に、このメソッドを呼び出します。
|
void |
nodesWereInserted(TreeNode node, int[] childIndices)
ユーザーがいくつかの TreeNode をノードに挿入したあとでこのメソッドを呼び出します。
|
void |
nodesWereRemoved(TreeNode node, int[] childIndices, Object[] removedChildren)
ユーザーがいくつかの TreeNode をノードから削除したあとでこのメソッドを呼び出します。
|
void |
reload()
ユーザーがこのモデルの依存する
TreeNode を変更した場合、このメソッドを呼び出します。 |
void |
reload(TreeNode node)
ユーザーがこのモデルの依存する
TreeNode を変更した場合、このメソッドを呼び出します。 |
void |
removeNodeFromParent(MutableTreeNode node)
このメソッドをメッセージとして送って、ノードをその親から削除します。
|
void |
removeTreeModelListener(TreeModelListener l)
以前に addTreeModelListener() で追加されたリスナーを削除します。
|
void |
setAsksAllowsChildren(boolean newValue)
TreeNode に getAllowsChildren() または isLeaf() で問い合わせることにより、葉かどうかの判定をするかしないかを設定します。
|
void |
setRoot(TreeNode root)
ルートを
root に設定します。 |
void |
valueForPathChanged(TreePath path, Object newValue)
パスで識別される TreeNode のユーザーオブジェクトを設定し、変更済みのノードを送ります。
|
protected TreeNode root
protected EventListenerList listenerList
protected boolean asksAllowsChildren
isLeaf
メソッドが判断する方法を決定します。true の場合、ノードが子を許可しなければ葉ノードです。子を許可する場合は、子が存在しなくても葉ノードではありません。これで、たとえばファイルシステムのフォルダノードとファイルノードを区別できます。
この値が false の場合は、子を持たないノードは葉ノードで、どのノードでも子を持つことができます。
@ConstructorProperties(value="root") public DefaultTreeModel(TreeNode root)
root
- ツリーのルートである TreeNode オブジェクトDefaultTreeModel(TreeNode, boolean)
public DefaultTreeModel(TreeNode root, boolean asksAllowsChildren)
root
- ツリーのルートである TreeNode オブジェクトasksAllowsChildren
- boolean 型。どのノードでも子を持てる場合は false、各ノードが子を持てるかどうか確認するように求められる場合は trueasksAllowsChildren
public void setAsksAllowsChildren(boolean newValue)
public boolean asksAllowsChildren()
asksAllowsChildren
public void setRoot(TreeNode root)
root
に設定します。null の root
は、ツリーには何も表示されず、かつ適正であることを意味します。public Object getRoot()
public int getIndexOfChild(Object parent, Object child)
null
の場合は、-1 を返します。getIndexOfChild
、インタフェース: TreeModel
parent
- このデータソースから取得された、ツリー内のノードchild
- 対象となるノードnull
の場合は -1public Object getChild(Object parent, int index)
public int getChildCount(Object parent)
getChildCount
、インタフェース: TreeModel
parent
- このデータソースから取得された、ツリー内のノードpublic boolean isLeaf(Object node)
askAllowsChildren
の設定に依存します。isLeaf
、インタフェース: TreeModel
node
- チェック対象のノードasksAllowsChildren
, TreeModel.isLeaf(java.lang.Object)
public void reload()
TreeNode
を変更した場合、このメソッドを呼び出します。モデルは、それ自身が変更済みであることを、そのリスナーのすべてに通知します。public void valueForPathChanged(TreePath path, Object newValue)
valueForPathChanged
、インタフェース: TreeModel
path
- ユーザーが変更したノードへのパスnewValue
- TreeCellEditor からの新しい値public void insertNodeInto(MutableTreeNode newChild, MutableTreeNode parent, int index)
public void removeNodeFromParent(MutableTreeNode node)
public void nodeChanged(TreeNode node)
public void reload(TreeNode node)
TreeNode
を変更した場合、このメソッドを呼び出します。モデルは、指定のノードより下の部分で変更されたことを、そのすべてのリスナーに通知します。node
- 特定のノード。モデルはこのノードより下の部分で変更されたpublic void nodesWereInserted(TreeNode node, int[] childIndices)
public void nodesWereRemoved(TreeNode node, int[] childIndices, Object[] removedChildren)
public void nodesChanged(TreeNode node, int[] childIndices)
public void nodeStructureChanged(TreeNode node)
public TreeNode[] getPathToRoot(TreeNode aNode)
aNode
- パスを取得する TreeNodeprotected TreeNode[] getPathToRoot(TreeNode aNode, int depth)
aNode
- パスを取得する TreeNodedepth
- 返される配列のサイズ指定に使用する、(再帰呼び出しで) すでに取得済みのルートまでのステップ数を示す int 値public void addTreeModelListener(TreeModelListener l)
addTreeModelListener
、インタフェース: TreeModel
l
- 追加するリスナーremoveTreeModelListener(javax.swing.event.TreeModelListener)
public void removeTreeModelListener(TreeModelListener l)
removeTreeModelListener
、インタフェース: TreeModel
l
- 削除するリスナーaddTreeModelListener(javax.swing.event.TreeModelListener)
public TreeModelListener[] getTreeModelListeners()
TreeModelListener
全部。ツリーモデルリスナーが現在登録されていない場合は空の配列addTreeModelListener(javax.swing.event.TreeModelListener)
, removeTreeModelListener(javax.swing.event.TreeModelListener)
protected void fireTreeNodesChanged(Object source, Object[] path, int[] childIndices, Object[] children)
source
- TreeModelEvent
の発生元 (通常は this
)path
- 変更されたノードの親へのパス。ルートが変更されたことを特定するには、null
を使用するchildIndices
- 変更された要素のインデックスchildren
- 変更された要素protected void fireTreeNodesInserted(Object source, Object[] path, int[] childIndices, Object[] children)
source
- TreeModelEvent
の発生元 (通常は this
)path
- ノードが追加された親へのパスchildIndices
- 新しい要素のインデックスchildren
- 新規要素protected void fireTreeNodesRemoved(Object source, Object[] path, int[] childIndices, Object[] children)
source
- TreeModelEvent
の発生元 (通常は this
)path
- ノードが削除された親へのパスchildIndices
- 削除された要素のインデックスchildren
- 削除された要素protected void fireTreeStructureChanged(Object source, Object[] path, int[] childIndices, Object[] children)
source
- TreeModelEvent
の発生元 (通常は this
)path
- 変更された構造体の親へのパス。ルートが変更されたことを特定するには、null
を使用するchildIndices
- 影響を受ける要素のインデックスchildren
- 影響を受ける要素public <T extends EventListener> T[] getListeners(Class<T> listenerType)
FooListener
として現在登録されているすべてのオブジェクトの配列を返します。FooListener
は、addFooListener
メソッドを使用して登録されます。
FooListener.class
などのクラスリテラルを使用して listenerType
引数を指定できます。たとえば、次のコードを使用して、DefaultTreeModel
m
をそのツリーモデルリスナーに照会できます。
TreeModelListener[] tmls = (TreeModelListener[])(m.getListeners(TreeModelListener.class));このようなリスナーがない場合は空の配列を返します。
listenerType
- 要求されるリスナーの型。次の下位インタフェースを指定: java.util.EventListener
FooListener
として登録されたすべてのオブジェクトの配列、またはこのようなリスナーが追加されていない場合は空の配列ClassCastException
- listenerType
で、java.util.EventListener
を実装するクラスまたはインタフェースが指定されなかった場合getTreeModelListeners()
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.