|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object javax.swing.DefaultListSelectionModel
public class DefaultListSelectionModel
列表选择的默认数据模型。
警告:此类的序列化对象与以后的 Swing 版本不兼容。当前序列化支持适用于短期存储,或适用于在运行相同 Swing 版本的应用程序之间进行 RMI(Remote Method Invocation,远程方法调用)。从 1.4 版本开始,已在 java.beans
包中添加了支持所有 JavaBeansTM 长期存储的功能。请参见 XMLEncoder
。
ListSelectionModel
字段摘要 | |
---|---|
protected boolean |
leadAnchorNotificationEnabled
|
protected EventListenerList |
listenerList
|
从接口 javax.swing.ListSelectionModel 继承的字段 |
---|
MULTIPLE_INTERVAL_SELECTION, SINGLE_INTERVAL_SELECTION, SINGLE_SELECTION |
构造方法摘要 | |
---|---|
DefaultListSelectionModel()
|
方法摘要 | ||
---|---|---|
void |
addListSelectionListener(ListSelectionListener l)
将侦听器添加到每次在选择发生更改时都得到通知的列表。 |
|
void |
addSelectionInterval(int index0,
int index1)
将该选择更改为当前选择与 index0 和 index1(包括)之间索引的并集。 |
|
void |
clearSelection()
将该选择更改为空集。 |
|
Object |
clone()
返回此选择模型的具有相同选择的克隆。 |
|
protected void |
fireValueChanged(boolean isAdjusting)
通知侦听器已经结束了一系列的调整。 |
|
protected void |
fireValueChanged(int firstIndex,
int lastIndex)
通知 ListSelectionListener 选择的值已发生更改,该值在 firstIndex 和 lastIndex 组成的闭区间内。 |
|
protected void |
fireValueChanged(int firstIndex,
int lastIndex,
boolean isAdjusting)
|
|
int |
getAnchorSelectionIndex()
从对 setSelectionInterval()、addSelectionInterval() 或 removeSelectionInterval() 的最近调用中返回第一个索引参数。 |
|
int |
getLeadSelectionIndex()
从对 setSelectionInterval()、addSelectionInterval() 或 removeSelectionInterval() 的最近调用中返回第二个索引参数。 |
|
|
getListeners(Class<T> listenerType)
返回当前已在此模型上注册为 FooListener 的所有对象组成的数组。 |
|
ListSelectionListener[] |
getListSelectionListeners()
返回已在此 DefaultListSelectionModel 上注册的所有列表选择侦听器组成的数组。 |
|
int |
getMaxSelectionIndex()
返回最后选择的索引,如果选择为空,则返回 -1。 |
|
int |
getMinSelectionIndex()
返回第一个选择的索引,如果选择为空,则返回 -1。 |
|
int |
getSelectionMode()
返回选择模式。 |
|
boolean |
getValueIsAdjusting()
如果该值在进行一系列更改,则返回 true。 |
|
void |
insertIndexInterval(int index,
int length,
boolean before)
从 index 之前/之后开始插入 length 个索引。 |
|
boolean |
isLeadAnchorNotificationEnabled()
返回 leadAnchorNotificationEnabled 标志的值。 |
|
boolean |
isSelectedIndex(int index)
如果选择了指定的索引,则返回 true。 |
|
boolean |
isSelectionEmpty()
如果没有选择索引,则返回 true。 |
|
void |
moveLeadSelectionIndex(int leadIndex)
设置 lead 选择索引,并不作更改地保留所有选择值。 |
|
void |
removeIndexInterval(int index0,
int index1)
从选择模型中移除 index0,index1 区间中(包括两端点)的索引。 |
|
void |
removeListSelectionListener(ListSelectionListener l)
将侦听器从每次在选择发生更改时都得到通知的列表中移除。 |
|
void |
removeSelectionInterval(int index0,
int index1)
将该选择更改为当前选择与 index0 和 index1(包括)之间索引的差集。 |
|
void |
setAnchorSelectionIndex(int anchorIndex)
设置 anchor 选择索引,并不作更改地保留所有选择值。 |
|
void |
setLeadAnchorNotificationEnabled(boolean flag)
设置 leadAnchorNotificationEnabled 标志的值。 |
|
void |
setLeadSelectionIndex(int leadIndex)
设置 lead 选择索引,确保 anchor 和新 lead 之间的值要么全部被选定,要么全部被取消选定。 |
|
void |
setSelectionInterval(int index0,
int index1)
更改要位于 index0 和 index1(包括)之间的选择。 |
|
void |
setSelectionMode(int selectionMode)
设置选择模式。 |
|
void |
setValueIsAdjusting(boolean isAdjusting)
如果将来对该模型的值的更改被视为单个事件,则此属性为 true。 |
|
String |
toString()
返回显示并标识此对象的属性的字符串。 |
从类 java.lang.Object 继承的方法 |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
字段详细信息 |
---|
protected EventListenerList listenerList
protected boolean leadAnchorNotificationEnabled
构造方法详细信息 |
---|
public DefaultListSelectionModel()
方法详细信息 |
---|
public int getMinSelectionIndex()
ListSelectionModel
复制的描述
ListSelectionModel
中的 getMinSelectionIndex
public int getMaxSelectionIndex()
ListSelectionModel
复制的描述
ListSelectionModel
中的 getMaxSelectionIndex
public boolean getValueIsAdjusting()
ListSelectionModel
复制的描述
ListSelectionModel
中的 getValueIsAdjusting
ListSelectionModel.setValueIsAdjusting(boolean)
public int getSelectionMode()
ListSelectionModel
中的 getSelectionMode
getSelectionMode()
public void setSelectionMode(int selectionMode)
ListSelectionModel
中的 setSelectionMode
selectionMode
- 以下三个值之一:
IllegalArgumentException
- 如果 selectionMode
不是上面显示的合法值之一setSelectionMode(int)
public boolean isSelectedIndex(int index)
ListSelectionModel
复制的描述
ListSelectionModel
中的 isSelectedIndex
public boolean isSelectionEmpty()
ListSelectionModel
复制的描述
ListSelectionModel
中的 isSelectionEmpty
public void addListSelectionListener(ListSelectionListener l)
ListSelectionModel
复制的描述
ListSelectionModel
中的 addListSelectionListener
l
- ListSelectionListenerListSelectionModel.removeListSelectionListener(javax.swing.event.ListSelectionListener)
,
ListSelectionModel.setSelectionInterval(int, int)
,
ListSelectionModel.addSelectionInterval(int, int)
,
ListSelectionModel.removeSelectionInterval(int, int)
,
ListSelectionModel.clearSelection()
,
ListSelectionModel.insertIndexInterval(int, int, boolean)
,
ListSelectionModel.removeIndexInterval(int, int)
public void removeListSelectionListener(ListSelectionListener l)
ListSelectionModel
复制的描述
l
- ListSelectionListenerListSelectionModel.addListSelectionListener(javax.swing.event.ListSelectionListener)
public ListSelectionListener[] getListSelectionListeners()
DefaultListSelectionModel
上注册的所有列表选择侦听器组成的数组。
ListSelectionListener
,如果当前没有已注册的列表选择侦听器,则返回一个空数组。addListSelectionListener(javax.swing.event.ListSelectionListener)
,
removeListSelectionListener(javax.swing.event.ListSelectionListener)
protected void fireValueChanged(boolean isAdjusting)
protected void fireValueChanged(int firstIndex, int lastIndex)
ListSelectionListener
选择的值已发生更改,该值在 firstIndex
和 lastIndex
组成的闭区间内。
protected void fireValueChanged(int firstIndex, int lastIndex, boolean isAdjusting)
firstIndex
- 区间中的第一个索引lastIndex
- 区间中的最后一个索引isAdjusting
- 如果这是一系列调整中的最终更改,则该参数为 trueEventListenerList
public <T extends EventListener> T[] getListeners(Class<T> listenerType)
FooListener
的所有对象组成的数组。FooListener
是用 addFooListener
方法注册的。
可以使用 class 字面值来指定 listenerType
参数,如 FooListener.class
。例如,可以使用下面的代码查询 DefaultListSelectionModel
实例 m
的列表选择侦听器:
ListSelectionListener[] lsls = (ListSelectionListener[])(m.getListeners(ListSelectionListener.class));如果不存在这样的侦听器,则此方法将返回一个空数组。
listenerType
- 所请求侦听器的类型;该参数应该指定一个从 java.util.EventListener
遗传下来的接口
FooListener
的所有对象组成的数组,如果没有添加这样的侦听器,则返回一个空数组
ClassCastException
- 如果 listenerType
没有指定实现 java.util.EventListener
的类或接口getListSelectionListeners()
public void setLeadAnchorNotificationEnabled(boolean flag)
public boolean isLeadAnchorNotificationEnabled()
leadAnchorNotificationEnabled
标志的值。当 leadAnchorNotificationEnabled
为 true 时,该模型生成具有限定范围的通知事件,该范围覆盖对选择所做的所有更改以及对 lead 和 anchor 索引所做的更改。将标志设置为 false 会导致事件的限定范围缩小,使其只包括那些已选择的或自上一次更改之后取消选择的元素。总之,该模型将继续内部维护 lead 和 anchor 变量。默认值为 true。
注:在不更改选择的情况下更改 lead 或 anchor 是有可能的。通知这些更改常常很重要,比如需要在视图中更新新的 lead 或 anchor 时。因此,在更改默认值时,一定要小心谨慎。
leadAnchorNotificationEnabled
标志的值setLeadAnchorNotificationEnabled(boolean)
public void clearSelection()
ListSelectionModel
复制的描述
ListSelectionModel
中的 clearSelection
public void setSelectionInterval(int index0, int index1)
ListSelectionModel
复制的描述
ListSelectionModel
中的 setSelectionInterval
index0
- 区间的一端。index1
- 区间的另一端ListSelectionModel.addListSelectionListener(javax.swing.event.ListSelectionListener)
public void addSelectionInterval(int index0, int index1)
ListSelectionModel
复制的描述
ListSelectionModel
中的 addSelectionInterval
index0
- 区间的一端。index1
- 区间的另一端ListSelectionModel.addListSelectionListener(javax.swing.event.ListSelectionListener)
public void removeSelectionInterval(int index0, int index1)
ListSelectionModel
复制的描述
ListSelectionModel
中的 removeSelectionInterval
index0
- 区间的一端。index1
- 区间的另一端ListSelectionModel.addListSelectionListener(javax.swing.event.ListSelectionListener)
public void insertIndexInterval(int index, int length, boolean before)
ListSelectionModel
中的 insertIndexInterval
public void removeIndexInterval(int index0, int index1)
ListSelectionModel
中的 removeIndexInterval
public void setValueIsAdjusting(boolean isAdjusting)
ListSelectionModel
复制的描述
ListSelectionModel
中的 setValueIsAdjusting
isAdjusting
- 属性的新值。ListSelectionModel.getValueIsAdjusting()
public String toString()
public Object clone() throws CloneNotSupportedException
listenerList
没有被复制。
CloneNotSupportedException
- 如果选择模型没有 (a) 实现 Cloneable 接口且 (b) 定义一个 clone
方法。Cloneable
public int getAnchorSelectionIndex()
ListSelectionModel
复制的描述
ListSelectionModel
中的 getAnchorSelectionIndex
public int getLeadSelectionIndex()
ListSelectionModel
复制的描述
ListSelectionModel
中的 getLeadSelectionIndex
public void setAnchorSelectionIndex(int anchorIndex)
ListSelectionModel
中的 setAnchorSelectionIndex
public void moveLeadSelectionIndex(int leadIndex)
leadIndex
- 新的 lead 选择索引setAnchorSelectionIndex(int)
,
setLeadSelectionIndex(int)
,
getLeadSelectionIndex()
public void setLeadSelectionIndex(int leadIndex)
如果 anchor 索引处的值未被选定,则反过来执行上述操作:选择原有范围中的值,并取消选择新范围中的值。
为此更改生成一个事件,并通知所有侦听器。为了在此事件中生成最小的限定范围,要一次完成该操作;那样广播的 ListSelectionEvent 中第一个和最后一个索引将指出由于此方法而实际更改了其值的单元格。如果分两步完成此操作,则选择状态上的效果将是相同的,但会生成两个事件,更改值的限定范围变得更宽,包括之前已清除但稍后又被设置的单元格。
可以在 UI 类的 mouseDragged
方法中使用此方法来扩展选择。
ListSelectionModel
中的 setLeadSelectionIndex
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。