- すべての実装されたインタフェース:
Serializable,Cloneable,TreeSelectionModel
- 直系の既知のサブクラス:
JTree.EmptySelectionModel
public class DefaultTreeSelectionModel extends Object implements Cloneable, Serializable, TreeSelectionModel
resetRowSelectionは選択されたパスを更新するメソッドから呼び出されます。 選択できるものをフィルタリングするために、これらのメソッドのどれかをサブクラス化する場合、スーパー・クラスにメッセージを送っていなければ、必ずresetRowSelectionメッセージを送るようにします。 警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4では、すべてのJavaBeansの長期ストレージのサポートがjava.beansパッケージに追加されました。 XMLEncoderを参照してください。
- 関連項目:
JTree
-
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 protected SwingPropertyChangeSupportchangeSupportメッセージを受け取る登録済みリスナーのために使います。protected intleadIndex選択範囲のリード・パスのインデックスです。protected TreePathleadPath追加された最後のパスです。protected intleadRowリード行です。protected EventListenerListlistenerListイベント・リスナー・リストです。protected DefaultListSelectionModellistSelectionModelリスト選択モデルの更新を処理します。protected RowMapperrowMapper指定のパスに行を提供します。protected TreePath[]selection現在選択されているパスです。static StringSELECTION_MODE_PROPERTYselectionModeのプロパティ名です。protected intselectionMode選択モードは、SINGLE_TREE_SELECTION、CONTIGUOUS_TREE_SELECTION、DISCONTIGUOUS_TREE_SELECTIONのどれかになります。インタフェース javax.swing.tree.TreeSelectionModelで宣言されたフィールド
CONTIGUOUS_TREE_SELECTION, DISCONTIGUOUS_TREE_SELECTION, SINGLE_TREE_SELECTION -
コンストラクタのサマリー
コンストラクタ コンストラクタ 説明 DefaultTreeSelectionModel()空の新しいDefaultTreeSelectionModeのインスタンスを生成します。生成されたインスタンスの選択モードはDISCONTIGUOUS_TREE_SELECTIONです。 -
メソッドのサマリー
修飾子と型 メソッド 説明 voidaddPropertyChangeListener(PropertyChangeListener listener)PropertyChangeListenerをリスナー・リストに追加します。voidaddSelectionPath(TreePath path)現在の選択範囲にパスを追加します。voidaddSelectionPaths(TreePath[] paths)現在の選択範囲にパスを追加します。voidaddTreeSelectionListener(TreeSelectionListener x)選択されたTreePathの設定が変更されるたびに通知を受けるリスナーのリストにxを追加します。protected booleanarePathsContiguous(TreePath[] paths)パスが連続しているか、このオブジェクトにRowMapperがない場合、trueを返します。protected booleancanPathsBeAdded(TreePath[] paths)TreePathの特定のセットが追加できるかどうか判定するために使用します。protected booleancanPathsBeRemoved(TreePath[] paths)モデルの連続性を壊さずにパスを削除できる場合にtrueを返します。voidclearSelection()現在の選択範囲を空にします。Objectclone()同じ選択範囲を持つこのオブジェクトの複製を返します。protected voidfireValueChanged(TreeSelectionEvent e)このオブジェクトのツリー選択イベントの対象として登録しているリスナーすべてに通知します。TreePathgetLeadSelectionPath()追加された最後のパスを返します。intgetLeadSelectionRow()選択範囲のリード・インデックスを返します。<T extends EventListener>
T[]getListeners(Class<T> listenerType)このモデルにFooListenerとして現在登録されているすべてのオブジェクトの配列を返します。intgetMaxSelectionRow()選択した現在のTreePathの設定のRowMapperから取得した最大値を返します。intgetMinSelectionRow()選択した現在のTreePathの設定のRowMapperから取得した最小値を返します。PropertyChangeListener[]getPropertyChangeListeners()このDefaultTreeSelectionModelに登録されているすべてのプロパティ変更リスナーの配列を返します。RowMappergetRowMapper()TreePathを行にマップできるRowMapperのインスタンスを返します。intgetSelectionCount()選択されているパスの数を返します。intgetSelectionMode()選択モードを返します。これは、SINGLE_TREE_SELECTION、DISCONTIGUOUS_TREE_SELECTION、またはCONTIGUOUS_TREE_SELECTIONのいずれかになります。TreePathgetSelectionPath()選択範囲の先頭のパスを返します。TreePath[]getSelectionPaths()選択範囲を返します。int[]getSelectionRows()行の選択を返します。TreeSelectionListener[]getTreeSelectionListeners()このモデルに登録された、すべてのツリー選択リスナーから成る配列を返します。protected voidinsureRowContinuity()現在選択されているTreePathが現在の選択モードで有効であるかを確認します。protected voidinsureUniqueness()このメソッドは廃止されたため、その実装は操作不能です。booleanisPathSelected(TreePath path)パスpathが現在の選択範囲にある場合にtrueを返します。booleanisRowSelected(int row)rowで識別される行が選択されている場合にtrueを返します。booleanisSelectionEmpty()選択範囲が現在空の場合にtrueを返します。protected voidnotifyPathChange(Vector<?> changedPaths, TreePath oldLeadSelection)非推奨。JDK version 1.7以降voidremovePropertyChangeListener(PropertyChangeListener listener)PropertyChangeListenerをリスナー・リストから削除します。voidremoveSelectionPath(TreePath path)選択範囲からパスを削除します。voidremoveSelectionPaths(TreePath[] paths)選択範囲からパスを削除します。voidremoveTreeSelectionListener(TreeSelectionListener x)選択されたTreePathの設定が変更されるたびに通知を受けるリスナーのリストからxを削除します。voidresetRowSelection()このオブジェクトのTreePathから行へのマッピングを更新します。voidsetRowMapper(RowMapper newMapper)RowMapperのインスタンスを設定します。voidsetSelectionMode(int mode)選択モードを設定します。このモードは、SINGLE_TREE_SELECTION、CONTIGUOUS_TREE_SELECTION、DISCONTIGUOUS_TREE_SELECTIONのどれか1つである必要があります。voidsetSelectionPath(TreePath path)選択範囲をパスに設定します。voidsetSelectionPaths(TreePath[] pPaths)選択範囲を設定します。StringtoString()このオブジェクトのプロパティを表示および識別する文字列を返します。protected voidupdateLeadIndex()leadIndexインスタンス変数を更新します。
-
フィールド詳細
-
SELECTION_MODE_PROPERTY
public static final String SELECTION_MODE_PROPERTYselectionModeのプロパティ名です。- 関連項目:
- 定数フィールド値
-
changeSupport
protected SwingPropertyChangeSupport changeSupportメッセージを受け取る登録済みリスナーのために使います。 -
selection
protected TreePath[] selection現在選択されているパスです。 選択されているパスがない場合はnullになります。 -
listenerList
protected EventListenerList listenerListイベント・リスナー・リストです。 -
rowMapper
protected transient RowMapper rowMapper指定のパスに行を提供します。 -
listSelectionModel
protected DefaultListSelectionModel listSelectionModelリスト選択モデルの更新を処理します。 RowMapperを使用してTreePathから任意の行へマッピングします。次にマッピング先に値が配置されます。 -
selectionMode
protected int selectionMode選択モードは、SINGLE_TREE_SELECTION、CONTIGUOUS_TREE_SELECTION、DISCONTIGUOUS_TREE_SELECTIONのどれかになります。 -
leadPath
protected TreePath leadPath追加された最後のパスです。 -
leadIndex
protected int leadIndex選択範囲のリード・パスのインデックスです。 -
leadRow
protected int leadRowリード行です。
-
-
コンストラクタの詳細
-
DefaultTreeSelectionModel
public DefaultTreeSelectionModel()空の新しいDefaultTreeSelectionModeのインスタンスを生成します。生成されたインスタンスの選択モードはDISCONTIGUOUS_TREE_SELECTIONです。
-
-
メソッドの詳細
-
setRowMapper
public void setRowMapper(RowMapper newMapper)RowMapperのインスタンスを設定します。 このインスタンスを使うことによって、どの行がどのTreePathに対応するかを判定します。- 定義:
setRowMapper、インタフェース:TreeSelectionModel- パラメータ:
newMapper- 設定されるRowMapper
-
getRowMapper
public RowMapper getRowMapper()TreePathを行にマップできるRowMapperのインスタンスを返します。- 定義:
getRowMapper、インタフェース:TreeSelectionModel- 戻り値:
- TreePathを行にマップできるRowMapperインスタンス
-
setSelectionMode
public void setSelectionMode(int mode)選択モードを設定します。このモードは、SINGLE_TREE_SELECTION、CONTIGUOUS_TREE_SELECTION、DISCONTIGUOUS_TREE_SELECTIONのどれか1つである必要があります。 モードが定義された値でない場合は、DISCONTIGUOUS_TREE_SELECTIONモデルと見なされます。現在の選択範囲が新しいモードに対して有効でない場合、選択範囲は変更されます。 たとえば、3つのTreePathが選択された状態でモードを
SINGLE_TREE_SELECTIONに変更した場合、一つのTreePathの選択だけが残ります。 どのTreePathが選択されたままになるかは使用する特定の実装によって決まります。モードを定義されていないタイプに設定すると、モードは
DISCONTIGUOUS_TREE_SELECTIONになります。- 定義:
setSelectionMode、インタフェース:TreeSelectionModel- パラメータ:
mode- 設定モードを選択
-
getSelectionMode
public int getSelectionMode()選択モードを返します。これは、SINGLE_TREE_SELECTION、DISCONTIGUOUS_TREE_SELECTION、またはCONTIGUOUS_TREE_SELECTIONのいずれかになります。- 定義:
getSelectionMode、インタフェース:TreeSelectionModel- 戻り値:
- 現在の選択モード
-
setSelectionPath
public void setSelectionPath(TreePath path)選択範囲をパスに設定します。 これが変更を表す場合は、TreeSelectionListenersが通知を受けます。pathがnullの場合はclearSelectionを呼び出した場合と同じ効果があります。- 定義:
setSelectionPath、インタフェース:TreeSelectionModel- パラメータ:
path- 選択する新しいパス
-
setSelectionPaths
public void setSelectionPaths(TreePath[] pPaths)選択範囲を設定します。 指定されたパスが新しい選択範囲とみなされるかどうかは、選択モードによって異なります。 指定された配列がnullまたは空の場合は、選択範囲がクリアされます。 選択モードがSINGLE_TREE_SELECTIONの場合は、pPathsの最初のパスだけが使用されます。 選択モードがCONTIGUOUS_TREE_SELECTIONで、指定されたパスが連続していない場合は、pPathsの最初のパスだけが使用されます。 選択モードがDISCONTIGUOUS_TREE_SELECTIONの場合は、すべてのパスが使用されます。pPathsのnullパスはすべて無視されます。これが変更を表す場合は、登録されているすべての
TreeSelectionListenerが通知を受けます。リード・パスは最後の一意のパスに設定されます。
getSelectionPathsから返されるパスの順序は、このメソッドに指定されたパスと同じです。- 定義:
setSelectionPaths、インタフェース:TreeSelectionModel- パラメータ:
pPaths- 新しい選択範囲
-
addSelectionPath
public void addSelectionPath(TreePath path)現在の選択範囲にパスを追加します。 現在パスが選択範囲にない場合は、TreeSelectionListenersが通知を受けます。pathがnullの場合は影響はありません。- 定義:
addSelectionPath、インタフェース:TreeSelectionModel- パラメータ:
path- 現在の選択範囲に追加する新しいパス
-
addSelectionPaths
public void addSelectionPaths(TreePath[] paths)現在の選択範囲にパスを追加します。 paths内のパスが現在、選択範囲内にない場合、TreeSelectionListenersが通知を受けます。pathsがnullの場合は影響はありません。リード・パスは
pathsの最後のパスに設定されます。選択モードが
CONTIGUOUS_TREE_SELECTIONの場合、パスを新たに追加すると選択範囲が不連続になります。 これにより、2つの結果が発生する可能性があります。pathsのTreePathが連続している場合は、選択範囲はこれらのTreePathになります。そうでない場合は、TreePathが連続していないので、選択範囲はpathsの最初のTreePathになります。- 定義:
addSelectionPaths、インタフェース:TreeSelectionModel- パラメータ:
paths- 現在の選択範囲に追加する新しいパス
-
removeSelectionPath
public void removeSelectionPath(TreePath path)選択範囲からパスを削除します。 パスが選択範囲にある場合は、TreeSelectionListenersが通知を受けます。pathがnullの場合は影響はありません。- 定義:
removeSelectionPath、インタフェース:TreeSelectionModel- パラメータ:
path- 選択範囲から削除するパス
-
removeSelectionPaths
public void removeSelectionPaths(TreePath[] paths)選択範囲からパスを削除します。 paths内のパスが選択範囲にある場合は、TreeSelectionListenersが通知を受けます。pathsがnullの場合は影響はありません。- 定義:
removeSelectionPaths、インタフェース:TreeSelectionModel- パラメータ:
paths- 選択範囲から削除するパス
-
getSelectionPath
public TreePath getSelectionPath()選択範囲の先頭のパスを返します。 現在選択されている項目が1つだけの場合に便利です。- 定義:
getSelectionPath、インタフェース:TreeSelectionModel- 戻り値:
- 選択範囲内の最初のパス
-
getSelectionPaths
public TreePath[] getSelectionPaths()選択範囲を返します。- 定義:
getSelectionPaths、インタフェース:TreeSelectionModel- 戻り値:
- 選択範囲
-
getSelectionCount
public int getSelectionCount()選択されているパスの数を返します。- 定義:
getSelectionCount、インタフェース:TreeSelectionModel- 戻り値:
- 選択されたパスの数
-
isPathSelected
public boolean isPathSelected(TreePath path)パスpathが現在の選択範囲にある場合にtrueを返します。- 定義:
isPathSelected、インタフェース:TreeSelectionModel- パラメータ:
path- lokするパス- 戻り値:
pathが現在の選択にあるかどうか
-
isSelectionEmpty
public boolean isSelectionEmpty()選択範囲が現在空の場合にtrueを返します。- 定義:
isSelectionEmpty、インタフェース:TreeSelectionModel- 戻り値:
- 選択が現在空であるかどうか
-
clearSelection
public void clearSelection()現在の選択範囲を空にします。 これが現在の選択範囲の変更を表す場合は、選択リスナーが通知を受けます。- 定義:
clearSelection、インタフェース:TreeSelectionModel
-
addTreeSelectionListener
public void addTreeSelectionListener(TreeSelectionListener x)選択されたTreePathの設定が変更されるたびに通知を受けるリスナーのリストにxを追加します。- 定義:
addTreeSelectionListener、インタフェース:TreeSelectionModel- パラメータ:
x- 追加される新しいリスナー
-
removeTreeSelectionListener
public void removeTreeSelectionListener(TreeSelectionListener x)選択されたTreePathの設定が変更されるたびに通知を受けるリスナーのリストからxを削除します。- 定義:
removeTreeSelectionListener、インタフェース:TreeSelectionModel- パラメータ:
x- 削除するリスナー
-
getTreeSelectionListeners
public TreeSelectionListener[] getTreeSelectionListeners()このモデルに登録された、すべてのツリー選択リスナーから成る配列を返します。- 戻り値:
- このモデルの
TreeSelectionListener全部。ツリー選択リスナーが現在登録されていない場合は空の配列 - 導入されたバージョン:
- 1.4
- 関連項目:
addTreeSelectionListener(javax.swing.event.TreeSelectionListener),removeTreeSelectionListener(javax.swing.event.TreeSelectionListener)
-
fireValueChanged
protected void fireValueChanged(TreeSelectionEvent e)このオブジェクトのツリー選択イベントの対象として登録しているリスナーすべてに通知します。- パラメータ:
e- 変更を記述するイベント- 関連項目:
addTreeSelectionListener(javax.swing.event.TreeSelectionListener),EventListenerList
-
getListeners
public <T extends EventListener> T[] getListeners(Class<T> listenerType)このモデルにFooListenerとして現在登録されているすべてのオブジェクトの配列を返します。FooListenerは、addFooListenerメソッドを使用して登録されます。FooListener.classなどのクラス・リテラルを使用してlistenerType引数を指定できます。 たとえば、次のコードを使用して、DefaultTreeSelectionModelmをそのツリー選択リスナーに照会できます。TreeSelectionListener[] tsls = (TreeSelectionListener[])(m.getListeners(TreeSelectionListener.class));
このようなリスナーがない場合は空の配列を返します。- 型パラメータ:
T- リスナー型- パラメータ:
listenerType- リクエストされたリスナーの型- 戻り値:
- このコンポーネント上で
FooListenerとして登録されたすべてのオブジェクトの配列、またはこのようなリスナーが追加されていない場合は空の配列 - 例外:
ClassCastException-listenerTypeで、java.util.EventListenerを実装するクラスまたはインタフェースが指定されなかった場合- 導入されたバージョン:
- 1.3
- 関連項目:
getTreeSelectionListeners(),getPropertyChangeListeners()
-
getSelectionRows
public int[] getSelectionRows()行の選択を返します。getSelectionPathsから返されるTreePathとこのメソッドとの間には、必ずしも1対1のマッピングがあるとは限りません。 特に、TreePathが表示可能でない(RowMapperがTreePathに対応する行に対して-1を返す)場合は、対応する行が返される配列に含まれません。 たとえば、選択範囲がAとBの2つのパス(行10にAがあり、Bは現在表示可能でない)で構成される場合、このメソッドは単一のエントリ10を含む配列を返します。- 定義:
getSelectionRows、インタフェース:TreeSelectionModel- 戻り値:
- 行の選択
-
getMinSelectionRow
public int getMinSelectionRow()選択した現在のTreePathの設定のRowMapperから取得した最小値を返します。 何も選択されていない場合、またはRowMapperがない場合は、-1を返します。- 定義:
getMinSelectionRow、インタフェース:TreeSelectionModel- 戻り値:
- 選択されたTreePathの現在のセットのRowMapperから取得された最小の値
-
getMaxSelectionRow
public int getMaxSelectionRow()選択した現在のTreePathの設定のRowMapperから取得した最大値を返します。 何も選択されていない場合、またはRowMapperがない場合は、-1を返します。- 定義:
getMaxSelectionRow、インタフェース:TreeSelectionModel- 戻り値:
- 選択されたTreePathの現在のセットのRowMapperから取得された最大値
-
isRowSelected
public boolean isRowSelected(int row)rowで識別される行が選択されている場合にtrueを返します。- 定義:
isRowSelected、インタフェース:TreeSelectionModel- パラメータ:
row- チェックする行- 戻り値:
- 行が選択されているかどうか
-
resetRowSelection
public void resetRowSelection()このオブジェクトのTreePathから行へのマッピングを更新します。 このメソッドは、たとえば、ノードが拡張された場合のようにTreePathから整数へのマッピングが変更されたときに呼び出されます。通常は呼び出す必要はありません。JTreeとそれに関連するListenersが呼び出します。 独自のViewクラスを実装中の場合は自分で呼び出す必要があります。
insureRowContinuityを呼び出して、現在選択されているTreePathsがまだ選択モードで有効であることを確認します。- 定義:
resetRowSelection、インタフェース:TreeSelectionModel
-
getLeadSelectionRow
public int getLeadSelectionRow()選択範囲のリード・インデックスを返します。 これは、最後に追加されたインデックスです。- 定義:
getLeadSelectionRow、インタフェース:TreeSelectionModel- 戻り値:
- リード選択インデックス
-
getLeadSelectionPath
public TreePath getLeadSelectionPath()追加された最後のパスを返します。 このパスはJTreeが保持しているleadSelectionPathのプロパティとは異なる場合があります。- 定義:
getLeadSelectionPath、インタフェース:TreeSelectionModel- 戻り値:
- 追加された最後のパス
-
addPropertyChangeListener
public void addPropertyChangeListener(PropertyChangeListener listener)PropertyChangeListenerをリスナー・リストに追加します。 リスナーは、すべてのプロパティに対して登録されます。PropertyChangeEventは、選択範囲モードが変更されるとトリガーされます。
- 定義:
addPropertyChangeListener、インタフェース:TreeSelectionModel- パラメータ:
listener- 追加されるPropertyChangeListener
-
removePropertyChangeListener
public void removePropertyChangeListener(PropertyChangeListener listener)PropertyChangeListenerをリスナー・リストから削除します。 すべてのプロパティで登録されたPropertyChangeListenerを削除します。- 定義:
removePropertyChangeListener、インタフェース:TreeSelectionModel- パラメータ:
listener- 削除されるPropertyChangeListener
-
getPropertyChangeListeners
public PropertyChangeListener[] getPropertyChangeListeners()このDefaultTreeSelectionModelに登録されているすべてのプロパティ変更リスナーの配列を返します。- 戻り値:
- このモデルのすべての
PropertyChangeListener。現在プロパティ変更リスナーが登録されていない場合は空の配列 - 導入されたバージョン:
- 1.4
- 関連項目:
addPropertyChangeListener(java.beans.PropertyChangeListener),removePropertyChangeListener(java.beans.PropertyChangeListener)
-
insureRowContinuity
protected void insureRowContinuity()現在選択されているTreePathが現在の選択モードで有効であるかを確認します。 選択モードがCONTIGUOUS_TREE_SELECTIONのときにRowMapperが存在している場合、このメソッドはすべての行が連続しているか(ソートしたときに、すべての行が間隔を空けずに順序よく並んでいるか)を確認します。 選択範囲が連続してない場合は、ソートしたときに連続した行の最初のセットが含まれるようにリセットされます。選択モードが
SINGLE_TREE_SELECTIONの場合に、複数のTreePathが選択されると、選択範囲は、現在選択されている最初のパスを含むようにリセットされます。 -
arePathsContiguous
protected boolean arePathsContiguous(TreePath[] paths)パスが連続しているか、このオブジェクトにRowMapperがない場合、trueを返します。- パラメータ:
paths- チェックするパスの配列- 戻り値:
- パスが連続しているのか、このオブジェクトにRowMapperがないのか
-
canPathsBeAdded
protected boolean canPathsBeAdded(TreePath[] paths)TreePathの特定のセットが追加できるかどうか判定するために使用します。pathsがnull (または空)の場合、このオブジェクトがRowMapperを持たない場合、現在選択されていない場合、選択モードがDISCONTIGUOUS_TREE_SELECTIONの場合、または現在の選択範囲にパスを追加しても、TreePathが連続設定である場合に、trueを返します。- パラメータ:
paths- チェックするTreePathsの配列- 戻り値:
TreePathsの特定のセットを追加できるかどうか
-
canPathsBeRemoved
protected boolean canPathsBeRemoved(TreePath[] paths)モデルの連続性を壊さずにパスを削除できる場合にtrueを返します。 これにはかなり大きな負荷がかかります。- パラメータ:
paths- チェックするTreePathの配列- 戻り値:
- モデルの連続性を損なうことなくパスを削除できるかどうか
-
notifyPathChange
@Deprecatedprotected void notifyPathChange(Vector<?> changedPaths, TreePath oldLeadSelection)非推奨。JDK version 1.7以降path内の変更をリスナーに通知します。changePathsは、PathPlaceHolderのインスタンスを保持します。- パラメータ:
changedPaths- 変更されたパスのベクトルoldLeadSelection- 古い選択パス
-
updateLeadIndex
protected void updateLeadIndex()leadIndexインスタンス変数を更新します。 -
insureUniqueness
protected void insureUniqueness()このメソッドは廃止されたため、その実装は操作不能です。 setSelectionPathsやaddSelectionPathsによってまだ呼び出されますが、下位互換性の場合に限られます。 -
toString
public String toString()このオブジェクトのプロパティを表示および識別する文字列を返します。 -
clone
public Object clone() throws CloneNotSupportedException同じ選択範囲を持つこのオブジェクトの複製を返します。 このメソッドは選択リスナーとプロパティ・リスナーを複製しません。- オーバーライド:
clone、クラス:Object- 戻り値:
- このインスタンスの複製。
- 例外:
CloneNotSupportedException- このクラスのインスタンスではスローされない- 関連項目:
Cloneable
-