JavaTM 2 Platform
Standard Ed. 5.0

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,因为事件的惟一状态是 source 属性。
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()
          构造一个默认 JButtonModel
 
方法摘要
 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)
          设置 actionCommand 字符串,在按下按钮时,该字符串将作为事件的一部分被发送。
 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,因为事件的惟一状态是 source 属性。所生成事件的 source 总是 "this"。


listenerList

protected EventListenerList listenerList

ARMED

public static final int ARMED
指示选择按钮操作的部分委托事项。

另请参见:
常量字段值

SELECTED

public static final int SELECTED
指示按纽已经被选择。只有某些类型的按钮需要该指示,比如 RadioButton 或 Checkbox。

另请参见:
常量字段值

PRESSED

public static final int PRESSED
指示按钮已经被“按下”(通常在鼠标被释放时)。

另请参见:
常量字段值

ENABLED

public static final int ENABLED
指示可以通过输入设备(比如鼠标指针)选择按钮。

另请参见:
常量字段值

ROLLOVER

public static final int ROLLOVER
指示鼠标位于按钮上。

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

DefaultButtonModel

public DefaultButtonModel()
构造一个默认 JButtonModel

方法详细信息

setActionCommand

public void setActionCommand(String actionCommand)
设置 actionCommand 字符串,在按下按钮时,该字符串将作为事件的一部分被发送。

指定者:
接口 ButtonModel 中的 setActionCommand
参数:
actionCommand - 标识生成事件的 String

getActionCommand

public String getActionCommand()
返回此按钮的动作命令。

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

isArmed

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

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

isSelected

public boolean isSelected()
指示按钮是否已经被选择。只有某些类型的按钮需要该指示,比如 RadioButton 或 Checkbox。

指定者:
接口 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 - 为 true 表示装备按钮,以便它可以被选择

setEnabled

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

指定者:
接口 ButtonModel 中的 setEnabled
参数:
b - 为 true 表示启用按钮
另请参见:
isEnabled()

setSelected

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

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

setPressed

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

指定者:
接口 ButtonModel 中的 setPressed
参数:
b - 为 true 表示将按钮设置为“按下”
另请参见:
isEnabled()

setRollover

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

指定者:
接口 ButtonModel 中的 setRollover
参数:
b - 为 true 表示开启翻转
另请参见:
isRollover()

setMnemonic

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

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

getMnemonic

public int getMnemonic()
获得此模型的键盘助记符

指定者:
接口 ButtonModel 中的 getMnemonic
返回:
指示加速器的 int 值
另请参见:
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 2 Platform
Standard Ed. 5.0

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

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