|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
public interface TreeSelectionModel
此接口表示树选择组件的当前状态。有关使用树选择模型的信息和示例,请参阅《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
的两个副本。
前导 TreePath 是添加(或设置)的最后一个路径。前导行则是对应于 TreePath 的行,由 RowMapper 确定。
字段摘要 | |
---|---|
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)
向侦听器列表添加 x,每次选定的 TreePath 集合发生更改时,这些侦听器都会得到通知。 |
void |
clearSelection()
清空当前的选择。 |
TreePath |
getLeadSelectionPath()
返回添加的最后一个路径。 |
int |
getLeadSelectionRow()
返回前导选择索引。 |
int |
getMaxSelectionRow()
返回从 RowMapper 获取的已选的 TreePath 当前集合中的最大值。 |
int |
getMinSelectionRow()
返回从 RowMapper 获取的已选的 TreePath 当前集合中的最小值。 |
RowMapper |
getRowMapper()
返回能够将 TreePath 映射到行的 RowMapper 实例。 |
int |
getSelectionCount()
返回选择的路径数。 |
int |
getSelectionMode()
返回当前选择的模式( SINGLE_TREE_SELECTION 、CONTIGUOUS_TREE_SELECTION 或 DISCONTIGUOUS_TREE_SELECTION 之一)。 |
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)
设置选择模型,它必须是 SINGLE_TREE_SELECTION、CONTIGUOUS_TREE_SELECTION 或 DISCONTIGUOUS_TREE_SELECTION 之一。 |
void |
setSelectionPath(TreePath path)
为该选择设置路径。 |
void |
setSelectionPaths(TreePath[] paths)
为该选择设置路径。 |
字段详细信息 |
---|
static final int SINGLE_TREE_SELECTION
static final int CONTIGUOUS_TREE_SELECTION
static final int DISCONTIGUOUS_TREE_SELECTION
方法详细信息 |
---|
void setSelectionMode(int mode)
如果对于新的模式当前选择无效,则此方法可以更改这一选择。例如,如果将模式更改为 SINGLE_TREE_SELECTION
时选中三个 TreePath,则只有一个 TreePath 仍然被选中。由特定的实现来决定保留选定哪一个 TreePath。
int getSelectionMode()
SINGLE_TREE_SELECTION
、CONTIGUOUS_TREE_SELECTION
或 DISCONTIGUOUS_TREE_SELECTION
之一)。
void setSelectionPath(TreePath path)
path
为 null,则这与调用 clearSelection
具有相同的效果。
path
- 要选择的新路径void setSelectionPaths(TreePath[] paths)
paths
为 null,则这与调用 clearSelection
具有相同的效果。
paths
- 新的选择void addSelectionPath(TreePath path)
path
为 null,则此方法无效。
path
- 添加到当前选择中的新路径void addSelectionPaths(TreePath[] paths)
paths
为 null,则通此方法无效。
paths
- 添加到当前选择的新路径void removeSelectionPath(TreePath path)
path
为 null,则此方法无效。
path
- 要从选择中移除的路径void removeSelectionPaths(TreePath[] paths)
paths
中的任何路径在选择中,则通知 TreeSelectionListener。如果 paths
为 null,则此方法无效。
paths
- 要从选择中移除的路径TreePath getSelectionPath()
RowMapper
确定的具有最小整数值的 TreePath。
TreePath[] getSelectionPaths()
int getSelectionCount()
boolean isPathSelected(TreePath path)
path
在当前的选择中,则返回 true。
boolean isSelectionEmpty()
void clearSelection()
void setRowMapper(RowMapper newMapper)
RowMapper getRowMapper()
int[] getSelectionRows()
int getMinSelectionRow()
int getMaxSelectionRow()
boolean isRowSelected(int row)
row
标识的行,则返回 true。
void resetRowSelection()
通常不必调用此方法;JTree 及其相关的侦听器将为您调用它。如果您正在实现自已的 view 类,则必须调用它。
int getLeadSelectionRow()
TreePath getLeadSelectionPath()
void addPropertyChangeListener(PropertyChangeListener listener)
当选择模式更改时,将触发 PropertyChangeEvent。
listener
- 要添加的 PropertyChangeListenervoid removePropertyChangeListener(PropertyChangeListener listener)
listener
- 要移除的 PropertyChangeListenervoid addTreeSelectionListener(TreeSelectionListener x)
x
- 要添加的新侦听器void removeTreeSelectionListener(TreeSelectionListener x)
x
- 要移除的侦听器
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。