public class DefaultTreeModel extends Object implements Serializable, TreeModel
警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースとの互換性がなくなる予定です。現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。1.4以降、すべてのJavaBeans(tm)用の長期間の格納サポートが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, 2014, Oracle and/or its affiliates. All rights reserved.