|
JavaTM 2 Platform Std. Ed. v1.4.0 |
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object | +--javax.swing.tree.DefaultTreeModel
TreeNodes を使う簡単なツリーデータモデルです。DefaultTreeModel の詳細および使用例は、「The Java Tutorial」の「How to Use Trees」セクションを参照してください。
警告:
このクラスの直列化されたオブジェクトは、今後の 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)
親における子のインデックスを返します。 |
EventListener[] |
getListeners(Class 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 のユーザオブジェクトを設定し、変更済みのノードを送ります。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
protected TreeNode root
protected EventListenerList listenerList
protected boolean asksAllowsChildren
isLeaf
メソッドが判断する方法を決定します。true の場合、ノードが子を許可しなければ葉ノードです。子を許可する場合は、子が存在しなくても葉ノードではありません。これで、たとえばファイルシステムの「フォルダノード」と「ファイルノード」を区別できます。
この値が false の場合は、子を持たないノードは葉ノードで、どのノードでも子を持つことができます。
TreeNode.getAllowsChildren()
,
TreeModel.isLeaf(java.lang.Object)
,
setAsksAllowsChildren(boolean)
コンストラクタの詳細 |
public DefaultTreeModel(TreeNode root)
root
- ツリーのルートである TreeNode オブジェクトDefaultTreeModel(TreeNode, boolean)
public DefaultTreeModel(TreeNode root, boolean asksAllowsChildren)
root
- ツリーのルートである TreeNode オブジェクトasksAllowsChildren
メソッドの詳細 |
public void setAsksAllowsChildren(boolean newValue)
public boolean asksAllowsChildren()
asksAllowsChildren
public void setRoot(TreeNode root)
root
に設定します。null の root
は、ツリーには何も表示されず、かつ適正であることを意味します。
public Object getRoot()
TreeModel
内の getRoot
public int getIndexOfChild(Object parent, Object child)
null
の場合は、-1 を返します。
TreeModel
内の getIndexOfChild
parent
- このデータソースから取得された、ツリー内のノードchild
- 対象となるノード
null
の場合は -1public Object getChild(Object parent, int index)
TreeModel
内の getChild
parent
- このデータソースから取得された、ツリー内のノード
public int getChildCount(Object parent)
TreeModel
内の getChildCount
parent
- このデータソースから取得された、ツリー内のノード
public boolean isLeaf(Object node)
askAllowsChildren
の設定に依存します。
TreeModel
内の isLeaf
node
- チェック対象のノード
asksAllowsChildren
,
TreeModel.isLeaf(java.lang.Object)
public void reload()
public void valueForPathChanged(TreePath path, Object newValue)
TreeModel
内の valueForPathChanged
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)
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)
TreeModel
内の addTreeModelListener
l
- 追加するリスナーremoveTreeModelListener(javax.swing.event.TreeModelListener)
public void removeTreeModelListener(TreeModelListener l)
TreeModel
内の removeTreeModelListener
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
- 変更されるノードpath
- ルートノードへのパスchildren
- 変更された要素EventListenerList
protected void fireTreeNodesInserted(Object source, Object[] path, int[] childIndices, Object[] children)
source
- 新しい要素が挿入されるノードpath
- ルートノードへのパスchildren
- 新規要素EventListenerList
protected void fireTreeNodesRemoved(Object source, Object[] path, int[] childIndices, Object[] children)
source
- 要素が削除されるノードpath
- ルートノードへのパスchildren
- 削除された要素EventListenerList
protected void fireTreeStructureChanged(Object source, Object[] path, int[] childIndices, Object[] children)
source
- ツリーモデルが変更されたノードpath
- ルートノードへのパスchildren
- 影響を受ける要素EventListenerList
public EventListener[] getListeners(Class 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()
|
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.