| 
JavaTM 2 Platform Std. Ed. v1.3  | 
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
このインタフェースはツリーコンポーネントの現在の選択状況を表します。ツリー選択モデルの詳細および使用例は、「The Java Tutorial」の「How to Use Trees」セクションを参照してください。
ツリー選択の状況は TreePath の設定、またオプションで整数設定によって識別されます。TreePath から整数へは RowMapper のインスタンスによりマッピングされます。TreeSelectionModel が RowMapper を正しく操作する必要はなく、RowMapper がない場合は getSelectionRows は null を返します。
TreeSelectionModel は単一パス (SINGLE_TREE_SELECTION)、複数の連続パス (CONTIGUOUS_TREE_SELECTION)、複数の非連続パス (DISCONTIGUOUS_TREE_SELECTION) が使用できるように設定できます。RowMapper を使用して TreePath が連続しているかどうかを判定します。RowMapper がない場合は、CONTIGUOUS_TREE_SELECTION および DISCONTIGUOUS_TREE_SELECTION は同じように動作し、TreeSelectionModel にはパスをいくつでも格納できることになります。
CONTIGUOUS_TREE_SELECTION の選択モデルは、いつでもパスは変更でき (setSelectionPath、addSelectionPath ... により)、TreePath を再度判定して連続にすることもできます。resetRowSelection を呼び出して TreePath の判定をすることもできます。非連続 TreePath の設定を連続設定にマッピングする方法は、特定のポリシーを適用するためにこのインタフェースの実装者に一任されています。
実装にあたっては、選択範囲に追加された重複する TreePath を結合する必要があります。たとえば、次のコードの場合は
   TreePath[] paths = new TreePath[] { treePath, treePath };
   treeSelectionModel.setSelectionPaths(paths);
 
一つのパス treePath のみが選択されるようにして、treePath のコピーが 2 つ選択されないようにする必要があります。
リード TreePath は追加または設定された最後のパスです。したがって、リード行は RowMapper によって判定された TreePath に対応する行となります。
| フィールドの概要 | |
static int | 
CONTIGUOUS_TREE_SELECTION
選択範囲の項目は連続している必要があります。  | 
static int | 
DISCONTIGUOUS_TREE_SELECTION
選択範囲の項目数に制限はなく、各項目は連続している必要はありません。  | 
static int | 
SINGLE_TREE_SELECTION
選択範囲には、同時に複数のパスを指定することはできません。  | 
| メソッドの概要 | |
 void | 
addPropertyChangeListener(PropertyChangeListener listener)
PropertyChangeListener をリスナーリストに追加します。  | 
 void | 
addSelectionPath(TreePath path)
現在の選択範囲にパスを追加します。  | 
 void | 
addSelectionPaths(TreePath[] paths)
現在の選択範囲にパスを追加します。  | 
 void | 
addTreeSelectionListener(TreeSelectionListener x)
選択された TreePath の設定が変更されるたびに通知を受けるリスナーのリストに x を追加します。  | 
 void | 
clearSelection()
現在の選択範囲を空にします。  | 
 TreePath | 
getLeadSelectionPath()
追加された最後のパスを返します。  | 
 int | 
getLeadSelectionRow()
選択範囲のリードインデックスを返します。  | 
 int | 
getMaxSelectionRow()
選択した現在の TreePath の設定の RowMapper から取得した最大値を返します。  | 
 int | 
getMinSelectionRow()
選択した現在の TreePath の設定の RowMapper から取得した最小値を返します。  | 
 RowMapper | 
getRowMapper()
TreePath を行にマップできる RowMapper のインスタンスを返します。  | 
 int | 
getSelectionCount()
選択されているパスの数を返します。  | 
 int | 
getSelectionMode()
現在の選択モードを返します。  | 
 TreePath | 
getSelectionPath()
選択範囲の先頭のパスを返します。  | 
 TreePath[] | 
getSelectionPaths()
選択範囲のパスを返します。  | 
 int[] | 
getSelectionRows()
現在選択されているすべての行を返します。  | 
 boolean | 
isPathSelected(TreePath path)
パス path が現在の選択範囲にある場合に true を返します。 | 
 boolean | 
isRowSelected(int row)
row で識別される行が選択されている場合に true を返します。  | 
 boolean | 
isSelectionEmpty()
選択範囲が現在空の場合に true を返します。  | 
 void | 
removePropertyChangeListener(PropertyChangeListener listener)
PropertyChangeListener をリスナーリストから削除します。  | 
 void | 
removeSelectionPath(TreePath path)
選択範囲からパスを削除します。  | 
 void | 
removeSelectionPaths(TreePath[] paths)
選択範囲からパスを削除します。  | 
 void | 
removeTreeSelectionListener(TreeSelectionListener x)
選択された TreePath の設定が変更されるたびに通知を受けるリスナーのリストから x を削除します。  | 
 void | 
resetRowSelection()
このオブジェクトの TreePath から行へのマッピングを更新します。  | 
 void | 
setRowMapper(RowMapper newMapper)
RowMapper のインスタンスを設定します。  | 
 void | 
setSelectionMode(int mode)
選択モデルを設定します。  | 
 void | 
setSelectionPath(TreePath path)
選択範囲をパスに設定します。  | 
 void | 
setSelectionPaths(TreePath[] paths)
選択範囲をパスに設定します。  | 
| フィールドの詳細 | 
public static final int SINGLE_TREE_SELECTION
public static final int CONTIGUOUS_TREE_SELECTION
public static final int DISCONTIGUOUS_TREE_SELECTION
| メソッドの詳細 | 
public void setSelectionMode(int mode)
現在の選択範囲が新しいモードに対して有効でない場合は選択範囲を変更できます。たとえば、モードが SINGLE_TREE_SELECTION に変更したときに 3 つの TreePath が選択された場合、一つの TreePath だけを選択できます。どの TreePath を選択するかは使用する特定の実装によって決まります。
public int getSelectionMode()
SINGLE_TREE_SELECTION、CONTIGUOUS_TREE_SELECTION、DISCONTIGUOUS_TREE_SELECTION のいずれかとなります。public void setSelectionPath(TreePath path)
path が null の場合は clearSelection を呼び出した場合と同じになります。path - 選択する新しいパスpublic void setSelectionPaths(TreePath[] paths)
path が null の場合は clearSelection を呼び出した場合と同じになります。paths - 新しい選択範囲public void addSelectionPath(TreePath path)
path が null の場合は影響はありません。path - 現在の選択範囲に追加する新しいパスpublic void addSelectionPaths(TreePath[] paths)
path が null の場合は影響はありません。path - 現在の選択範囲に追加する新しいパスpublic void removeSelectionPath(TreePath path)
path が null の場合は影響はありません。path - 選択範囲から削除するパスpublic void removeSelectionPaths(TreePath[] paths)
paths が選択範囲にある場合は、TreeSelectionListeners が通知を受けます。path が null の場合は影響はありません。paths - 選択範囲から削除するパスpublic TreePath getSelectionPath()
RowMapper が判定した最小整数値を持つ TreePath である必要はありません。public TreePath[] getSelectionPaths()
public int getSelectionCount()
public boolean isPathSelected(TreePath path)
path が現在の選択範囲にある場合に true を返します。public boolean isSelectionEmpty()
public void clearSelection()
public void setRowMapper(RowMapper newMapper)
public RowMapper getRowMapper()
public int[] getSelectionRows()
public int getMinSelectionRow()
public int getMaxSelectionRow()
public boolean isRowSelected(int row)
public void resetRowSelection()
通常は呼び出す必要はありません。JTree とそれに関連するリスナーが呼び出します。独自のビュークラスを実装中の場合は自分で呼び出す必要があります。
public int getLeadSelectionRow()
public TreePath getLeadSelectionPath()
public void addPropertyChangeListener(PropertyChangeListener listener)
PropertyChangeEvent は、選択範囲モードが変更されるとトリガーされます。
listener - 追加する PropertyChangeListenerpublic void removePropertyChangeListener(PropertyChangeListener listener)
listener - 削除する PropertyChangeListenerpublic void addTreeSelectionListener(TreeSelectionListener x)
x - 追加される新しいリスナーpublic void removeTreeSelectionListener(TreeSelectionListener x)
x - 削除するリスナー
  | 
JavaTM 2 Platform Std. Ed. v1.3  | 
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
 Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
 Palo Alto, California, 94303, U.S.A.  All Rights Reserved.