JavaTM Platform
Standard Ed. 6

javax.swing
类 DefaultButtonModel

java.lang.Object
  继承者 javax.swing.DefaultButtonModel
所有已实现的接口:
ItemSelectable, Serializable, ButtonModel
直接已知子类:
JToggleButton.ToggleButtonModel

public class DefaultButtonModel
extends Object
implements ButtonModel, Serializable

Button 组件的数据模型的默认实现。

警告:此类的序列化对象将与以后的 Swing 版本不兼容。当前的序列化支持适用于短期存储或运行相同 Swing 版本的应用程序之间的 RMI。从 1.4 版本开始,已在 java.beans 包中添加了支持所有 JavaBeansTM 长期存储的功能。请参见 XMLEncoder


字段摘要
protected  String actionCommand
          按钮所触发的动作命令字符串。
static int ARMED
          标识位掩码中“选中的”位,该位指示选择/触发按钮操作的部分委托事项。
protected  ChangeEvent changeEvent
          每个按钮模型实例只需要一个 ChangeEvent,因为事件的唯一状态是源属性。
static int ENABLED
          标识位掩码中“启用的”位,该位指示可以通过输入设备(如鼠标指针)选择按钮。
protected  ButtonGroup group
          按钮所属的按钮组。
protected  EventListenerList listenerList
          在此模型中存储侦听器。
protected  int mnemonic
          按钮的助记符。
static int PRESSED
          标识位掩码中“按下的”位,该位指示按钮已经被按下。
static int ROLLOVER
          标识位掩码中“翻转的”位,该位指示鼠标位于按钮上。
static int SELECTED
          标识位掩码中“选定的”位,该位指示按纽已被选定。
protected  int stateMask
          用于存储按钮状态的位掩码。
 
构造方法摘要
DefaultButtonModel()
          构造一个 DefaultButtonModel
 
方法摘要
 void addActionListener(ActionListener l)
          向模型添加一个 ActionListener
 void addChangeListener(ChangeListener l)
          向模型添加一个 ChangeListener
 void addItemListener(ItemListener l)
          向模型添加一个 ItemListener
protected  void fireActionPerformed(ActionEvent e)
          通知所有对此事件类型的通知感兴趣的已注册侦听器。
protected  void fireItemStateChanged(ItemEvent e)
          通知所有对此事件类型的通知感兴趣的已注册侦听器。
protected  void fireStateChanged()
          通知所有对此事件类型的通知感兴趣的已注册侦听器。
 String getActionCommand()
          返回该按钮的动作命令字符串。
 ActionListener[] getActionListeners()
          返回此 DefaultButtonModel 上所有已注册的操作侦听器组成的数组。
 ChangeListener[] getChangeListeners()
          返回此 DefaultButtonModel 上所有已注册的更改侦听器组成的数组。
 ButtonGroup getGroup()
          返回该按钮所属的组。
 ItemListener[] getItemListeners()
          返回此 DefaultButtonModel 上所有已注册的项侦听器组成的数组。
<T extends EventListener>
T[]
getListeners(Class<T> listenerType)
          返回目前已在此模型上注册为 FooListener 的所有对象组成的数组。
 int getMnemonic()
          获取该按钮的键盘助记符。
 Object[] getSelectedObjects()
          重写以返回 null
 boolean isArmed()
          指示触发按钮操作的部分委托事项。
 boolean isEnabled()
          指示是否可通过输入设备(比如鼠标指针)选择或触发按钮。
 boolean isPressed()
          指示按钮是否已被按下。
 boolean isRollover()
          指示鼠标是否在按钮上。
 boolean isSelected()
          指示按钮是否已经被选择。
 void removeActionListener(ActionListener l)
          从模型中移除一个 ActionListener
 void removeChangeListener(ChangeListener l)
          从模型中移除一个 ChangeListener
 void removeItemListener(ItemListener l)
          从模型中移除一个 ItemListener
 void setActionCommand(String actionCommand)
          设置动作命令字符串,在触发按钮时,该字符串将作为 ActionEvent 的一部分被发送。
 void setArmed(boolean b)
          将此按钮标记为选中或未选中。
 void setEnabled(boolean b)
          启用或禁用该按钮。
 void setGroup(ButtonGroup group)
          标识该按钮所属的组,这是单选钮所需要的,单选钮在它们的组内相互排斥。
 void setMnemonic(int key)
          设置该按钮的键盘助记符(快捷键或加速键)。
 void setPressed(boolean b)
          将按钮设置为按下或未被按下。
 void setRollover(boolean b)
          设置或清除该按钮的翻转状态
 void setSelected(boolean b)
          选择或取消选择该按钮。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

stateMask

protected int stateMask
用于存储按钮状态的位掩码。


actionCommand

protected String actionCommand
按钮所触发的动作命令字符串。


group

protected ButtonGroup group
按钮所属的按钮组。


mnemonic

protected int mnemonic
按钮的助记符。


changeEvent

protected transient ChangeEvent changeEvent
每个按钮模型实例只需要一个 ChangeEvent,因为事件的唯一状态是源属性。所生成事件的源总是 "this"。


listenerList

protected EventListenerList listenerList
在此模型中存储侦听器。


ARMED

public static final int ARMED
标识位掩码中“选中的”位,该位指示选择/触发按钮操作的部分委托事项。

另请参见:
常量字段值

SELECTED

public static final int SELECTED
标识位掩码中“选定的”位,该位指示按纽已被选定。只有某些类型的按钮需要该指示,比如单选钮或复选框。

另请参见:
常量字段值

PRESSED

public static final int PRESSED
标识位掩码中“按下的”位,该位指示按钮已经被按下。

另请参见:
常量字段值

ENABLED

public static final int ENABLED
标识位掩码中“启用的”位,该位指示可以通过输入设备(如鼠标指针)选择按钮。

另请参见:
常量字段值

ROLLOVER

public static final int ROLLOVER
标识位掩码中“翻转的”位,该位指示鼠标位于按钮上。

另请参见:
常量字段值
构造方法详细信息

DefaultButtonModel

public DefaultButtonModel()
构造一个 DefaultButtonModel

方法详细信息

setActionCommand

public void setActionCommand(String actionCommand)
设置动作命令字符串,在触发按钮时,该字符串将作为 ActionEvent 的一部分被发送。

指定者:
接口 ButtonModel 中的 setActionCommand
参数:
actionCommand - 标识生成的事件的 String
另请参见:
ButtonModel.getActionCommand(), ActionEvent.getActionCommand()

getActionCommand

public String getActionCommand()
返回该按钮的动作命令字符串。

指定者:
接口 ButtonModel 中的 getActionCommand
返回:
标识生成的事件的 String
另请参见:
ButtonModel.setActionCommand(java.lang.String)

isArmed

public boolean isArmed()
指示触发按钮操作的部分委托事项。

指定者:
接口 ButtonModel 中的 isArmed
返回:
如果按钮被选中,并准备触发它,则返回 true
另请参见:
ButtonModel.setArmed(boolean)

isSelected

public boolean isSelected()
指示按钮是否已经被选择。只有某些类型的按钮需要此指示,比如单选钮和复选框。

指定者:
接口 ButtonModel 中的 isSelected
返回:
如果按钮已选择,则返回 true

isEnabled

public boolean isEnabled()
指示是否可通过输入设备(比如鼠标指针)选择或触发按钮。

指定者:
接口 ButtonModel 中的 isEnabled
返回:
如果启用按钮,则返回 true

isPressed

public boolean isPressed()
指示按钮是否已被按下。

指定者:
接口 ButtonModel 中的 isPressed
返回:
如果按钮已被按下,则返回 true

isRollover

public boolean isRollover()
指示鼠标是否在按钮上。

指定者:
接口 ButtonModel 中的 isRollover
返回:
如果鼠标在按钮上,则返回 true

setArmed

public void setArmed(boolean b)
将此按钮标记为选中或未选中。

指定者:
接口 ButtonModel 中的 setArmed
参数:
b - 是否应该选中该按钮

setEnabled

public void setEnabled(boolean b)
启用或禁用该按钮。

指定者:
接口 ButtonModel 中的 setEnabled
参数:
b - 是否应该启用该按钮
另请参见:
ButtonModel.isEnabled()

setSelected

public void setSelected(boolean b)
选择或取消选择该按钮。

指定者:
接口 ButtonModel 中的 setSelected
参数:
b - 为 true 表示选择该按钮,为 false 表示取消对该按钮的选择。

setPressed

public void setPressed(boolean b)
将按钮设置为按下或未被按下。

指定者:
接口 ButtonModel 中的 setPressed
参数:
b - 是否应该按下该按钮
另请参见:
ButtonModel.isPressed()

setRollover

public void setRollover(boolean b)
设置或清除该按钮的翻转状态

指定者:
接口 ButtonModel 中的 setRollover
参数:
b - 该按钮是否处于翻转状态
另请参见:
ButtonModel.isRollover()

setMnemonic

public void setMnemonic(int key)
设置该按钮的键盘助记符(快捷键或加速键)。

指定者:
接口 ButtonModel 中的 setMnemonic
参数:
key - 指示加速键的 int 值

getMnemonic

public int getMnemonic()
获取该按钮的键盘助记符。

指定者:
接口 ButtonModel 中的 getMnemonic
返回:
指示加速键的 int 值
另请参见:
ButtonModel.setMnemonic(int)

addChangeListener

public void addChangeListener(ChangeListener l)
向模型添加一个 ChangeListener

指定者:
接口 ButtonModel 中的 addChangeListener
参数:
l - 要添加的侦听器

removeChangeListener

public void removeChangeListener(ChangeListener l)
从模型中移除一个 ChangeListener

指定者:
接口 ButtonModel 中的 removeChangeListener
参数:
l - 要移除的侦听器

getChangeListeners

public ChangeListener[] getChangeListeners()
返回此 DefaultButtonModel 上所有已注册的更改侦听器组成的数组。

返回:
此模型的所有 ChangeListener,如果当前没有已注册的更改侦听器,则返回一个空数组。
从以下版本开始:
1.4
另请参见:
addChangeListener(javax.swing.event.ChangeListener), removeChangeListener(javax.swing.event.ChangeListener)

fireStateChanged

protected void fireStateChanged()
通知所有对此事件类型的通知感兴趣的已注册侦听器。以延迟方式创建事件实例。

另请参见:
EventListenerList

addActionListener

public void addActionListener(ActionListener l)
向模型添加一个 ActionListener

指定者:
接口 ButtonModel 中的 addActionListener
参数:
l - 要添加的侦听器

removeActionListener

public void removeActionListener(ActionListener l)
从模型中移除一个 ActionListener

指定者:
接口 ButtonModel 中的 removeActionListener
参数:
l - 要移除的侦听器

getActionListeners

public ActionListener[] getActionListeners()
返回此 DefaultButtonModel 上所有已注册的操作侦听器组成的数组。

返回:
此模型的所有 ActionListener;如果当前没有注册任何操作侦听器,则返回一个空数组。
从以下版本开始:
1.4
另请参见:
addActionListener(java.awt.event.ActionListener), removeActionListener(java.awt.event.ActionListener)

fireActionPerformed

protected void fireActionPerformed(ActionEvent e)
通知所有对此事件类型的通知感兴趣的已注册侦听器。

参数:
e - 要传递给侦听器的 ActionEvent
另请参见:
EventListenerList

addItemListener

public void addItemListener(ItemListener l)
向模型添加一个 ItemListener

指定者:
接口 ItemSelectable 中的 addItemListener
指定者:
接口 ButtonModel 中的 addItemListener
参数:
l - 要添加的侦听器
另请参见:
ItemEvent

removeItemListener

public void removeItemListener(ItemListener l)
从模型中移除一个 ItemListener

指定者:
接口 ItemSelectable 中的 removeItemListener
指定者:
接口 ButtonModel 中的 removeItemListener
参数:
l - 要移除的侦听器
另请参见:
ItemEvent

getItemListeners

public ItemListener[] getItemListeners()
返回此 DefaultButtonModel 上所有已注册的项侦听器组成的数组。

返回:
此模型的所有 ItemListener,如果没有当前已注册的项侦听器,则返回一个空数组
从以下版本开始:
1.4
另请参见:
addItemListener(java.awt.event.ItemListener), removeItemListener(java.awt.event.ItemListener)

fireItemStateChanged

protected void fireItemStateChanged(ItemEvent e)
通知所有对此事件类型的通知感兴趣的已注册侦听器。

参数:
e - 要传递给侦听器的 ItemEvent
另请参见:
EventListenerList

getListeners

public <T extends EventListener> T[] getListeners(Class<T> listenerType)
返回目前已在此模型上注册为 FooListener 的所有对象组成的数组。FooListener 是用 addFooListener 方法注册的。

可以使用 class 字面值来指定 listenerType 参数,如 FooListener.class。例如,可以使用下面的代码查询 DefaultButtonModel 实例 m 的操作侦听器:

ActionListener[] als = (ActionListener[])(m.getListeners(ActionListener.class));
如果不存在这样的侦听器,则此方法将返回一个空数组。

参数:
listenerType - 请求的侦听器类型;该参数应该指定一个从 java.util.EventListener 继承的接口
返回:
在此模型上注册为 FooListener 的所有对象组成的数组,如果没有添加这样的侦听器,则返回一个空数组
抛出:
ClassCastException - 如果 listenerType 没有指定实现 java.util.EventListener 的类或接口
从以下版本开始:
1.3
另请参见:
getActionListeners(), getChangeListeners(), getItemListeners()

getSelectedObjects

public Object[] getSelectedObjects()
重写以返回 null

指定者:
接口 ItemSelectable 中的 getSelectedObjects

setGroup

public void setGroup(ButtonGroup group)
标识该按钮所属的组,这是单选钮所需要的,单选钮在它们的组内相互排斥。

指定者:
接口 ButtonModel 中的 setGroup
参数:
group - 该按钮所属的 ButtonGroup

getGroup

public ButtonGroup getGroup()
返回该按钮所属的组。通常用于单选钮,它们在其组中相互排斥。

返回:
该按钮所属的 ButtonGroup
从以下版本开始:
1.3

JavaTM Platform
Standard Ed. 6

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策