java.lang.Object
javax.swing.DefaultButtonModel
- 所有已实现的接口:
-
ItemSelectable,Serializable,ButtonModel
- 直接已知的子类:
-
JToggleButton.ToggleButtonModel
Button组件数据模型的默认实现。
警告: 该类的序列化对象将不兼容未来的Swing版本。当前的序列化支持适用于短期存储或在运行相同Swing版本的应用程序之间的RMI。从1.4开始,已将所有JavaBeans的长期存储支持添加到java.beans包中。请参阅XMLEncoder。
- 自:
- 1.2
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected String按钮触发的动作命令字符串。static final int标识位掩码中的“armed”位,表示对选择/触发按钮的部分承诺。protected ChangeEvent由于事件的唯一状态是源属性,因此每个按钮模型实例只需要一个ChangeEvent。static final int标识位掩码中的“enabled”位,表示按钮可以被输入设备(如鼠标指针)选择。protected ButtonGroup按钮所属的按钮组。protected EventListenerList存储在此模型上的监听器。protected int按钮的助记键。static final int标识位掩码中的“pressed”位,表示按钮已被按下。static final int标识位掩码中的“rollover”位,表示鼠标悬停在按钮上。static final int标识位掩码中的“selected”位,表示按钮已被选中。protected int用于存储按钮状态的位掩码。 -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid向模型添加一个ActionListener。void向模型添加一个ChangeListener。void向模型添加一个ItemListener。protected void通知所有已注册对此事件类型感兴趣的监听器。protected void通知所有已注册对此事件类型感兴趣的监听器。protected void通知所有已注册对此事件类型感兴趣的监听器。返回按钮的动作命令字符串。返回在此DefaultButtonModel上注册的所有动作监听器的数组。返回在此DefaultButtonModel上注册的所有更改监听器的数组。getGroup()返回按钮所属的组。返回在此DefaultButtonModel上注册的所有项目监听器的数组。<T extends EventListener>
T[]getListeners(Class<T> listenerType) 返回当前注册为此模型的所有FooListener的对象数组。int获取按钮的键盘助记键。Object[]被覆盖以返回null。booleanisArmed()表示对触发按钮的部分承诺。boolean表示按钮是否可以被输入设备(如鼠标指针)选择或触发。boolean表示按钮是否已被按下。boolean表示鼠标是否悬停在按钮上。boolean表示按钮是否已被选中。void从模型中移除一个ActionListener。void从模型中移除一个ChangeListener。void从模型中移除一个ItemListener。voidsetActionCommand(String actionCommand) 设置在触发按钮时作为ActionEvent的一部分发送的动作命令字符串。voidsetArmed(boolean b) 将按钮标记为已装备或未装备。voidsetEnabled(boolean b) 启用或禁用按钮。voidsetGroup(ButtonGroup group) 标识按钮所属的组 - 对于单选按钮(radio button)是必需的,因为它们在组内是互斥的。voidsetMnemonic(int key) 为按钮设置键盘助记键(快捷键或加速键)。voidsetPressed(boolean b) 设置按钮为按下或未按下。voidsetRollover(boolean b) 设置或清除按钮的悬停状态。voidsetSelected(boolean b) 选择或取消选择按钮。
-
Field Details
-
stateMask
protected int stateMask用于存储按钮状态的位掩码。 -
actionCommand
按钮触发的动作命令字符串。 -
group
按钮所属的按钮组。 -
mnemonic
protected int mnemonic按钮的助记键。 -
changeEvent
由于事件的唯一状态是源属性,因此每个按钮模型实例只需要一个ChangeEvent。生成的事件的源始终为“this”。 -
listenerList
存储在此模型上的监听器。 -
ARMED
public static final int ARMED标识位掩码中的“armed”位,表示对选择/触发按钮的部分承诺。- 参见:
-
SELECTED
public static final int SELECTED标识位掩码中的“selected”位,表示按钮已被选中。仅适用于某些类型的按钮 - 如单选按钮或复选框。- 参见:
-
PRESSED
public static final int PRESSED标识位掩码中的“pressed”位,表示按钮已被按下。- 参见:
-
ENABLED
public static final int ENABLED标识位掩码中的“enabled”位,表示按钮可以被输入设备(如鼠标指针)选择。- 参见:
-
ROLLOVER
public static final int ROLLOVER标识位掩码中的“rollover”位,表示鼠标悬停在按钮上。- 参见:
-
-
Constructor Details
-
DefaultButtonModel
public DefaultButtonModel()构造一个DefaultButtonModel。
-
-
Method Details
-
setActionCommand
设置在触发按钮时作为ActionEvent的一部分发送的动作命令字符串。- 指定者:
-
setActionCommand在接口ButtonModel中 - 参数:
-
actionCommand- 标识生成的事件的String - 参见:
-
getActionCommand
返回按钮的动作命令字符串。- 指定者:
-
getActionCommand在接口ButtonModel中 - 返回:
-
标识生成的事件的
String - 参见:
-
isArmed
public boolean isArmed()表示对触发按钮的部分承诺。- 指定者:
-
isArmed在接口ButtonModel中 - 返回:
-
如果按钮已装备并准备触发,则返回
true - 参见:
-
isSelected
public boolean isSelected()表示按钮是否已被选中。仅适用于某些类型的按钮 - 如单选按钮和复选框。- 指定者:
-
isSelected在接口ButtonModel中 - 返回:
-
如果按钮已被选中,则返回
true
-
isEnabled
public boolean isEnabled()表示按钮是否可以被输入设备(如鼠标指针)选择或触发。- 指定者:
-
isEnabled在接口ButtonModel中 - 返回:
-
如果按钮已启用,则返回
true
-
isPressed
public boolean isPressed()表示按钮是否已被按下。- 指定者:
-
isPressed在接口ButtonModel中 - 返回:
-
如果按钮已被按下,则返回
true
-
isRollover
public boolean isRollover()表示鼠标是否悬停在按钮上。- 指定者:
-
isRollover在接口ButtonModel中 - 返回:
-
如果鼠标悬停在按钮上,则返回
true
-
setArmed
public void setArmed(boolean b) 将按钮标记为已装备或未装备。- 指定者:
-
setArmed在接口ButtonModel中 - 参数:
-
b- 按钮是否应该被激活
-
setEnabled
public void setEnabled(boolean b) 启用或禁用按钮。- 指定者:
-
setEnabled在接口ButtonModel中 - 参数:
-
b- 按钮是否应该被启用 - 另请参阅:
-
setSelected
public void setSelected(boolean b) 选择或取消选择按钮。- 指定者:
-
setSelected在接口ButtonModel中 - 参数:
-
b-true选择按钮,false取消选择按钮
-
setPressed
public void setPressed(boolean b) 将按钮设置为按下或未按下状态。- 指定者:
-
setPressed在接口ButtonModel中 - 参数:
-
b- 按钮是否应该被按下 - 另请参阅:
-
setRollover
public void setRollover(boolean b) 设置或清除按钮的悬停状态- 指定者:
-
setRollover在接口ButtonModel中 - 参数:
-
b- 按钮是否处于悬停状态 - 另请参阅:
-
setMnemonic
public void setMnemonic(int key) 为按钮设置键盘助记键(快捷键或加速键)。- 指定者:
-
setMnemonic在接口ButtonModel中 - 参数:
-
key- 指定加速键的整数
-
getMnemonic
public int getMnemonic()获取按钮的键盘助记键。- 指定者:
-
getMnemonic在接口ButtonModel中 - 返回:
- 指定加速键的整数
- 另请参阅:
-
addChangeListener
向模型添加一个ChangeListener。- 指定者:
-
addChangeListener在接口ButtonModel中 - 参数:
-
l- 要添加的监听器
-
removeChangeListener
从模型中移除一个ChangeListener。- 指定者:
-
removeChangeListener在接口ButtonModel中 - 参数:
-
l- 要移除的监听器
-
getChangeListeners
返回在此DefaultButtonModel上注册的所有更改监听器的数组。- 返回:
-
所有此模型的
ChangeListener或如果当前没有注册任何更改监听器,则返回空数组 - 自:
- 1.4
- 另请参阅:
-
fireStateChanged
protected void fireStateChanged()通知所有已注册对此事件类型感兴趣的监听器。事件实例是延迟创建的。- 另请参阅:
-
addActionListener
向模型添加一个ActionListener。- 指定者:
-
addActionListener在接口ButtonModel中 - 参数:
-
l- 要添加的监听器
-
removeActionListener
从模型中移除一个ActionListener。- 指定者:
-
removeActionListener在接口ButtonModel中 - 参数:
-
l- 要移除的监听器
-
getActionListeners
返回在此DefaultButtonModel上注册的所有动作监听器的数组。- 返回:
-
所有此模型的
ActionListener或如果当前没有注册任何动作监听器,则返回空数组 - 自:
- 1.4
- 另请参阅:
-
fireActionPerformed
通知所有已注册对此事件类型感兴趣的监听器。- 参数:
-
e- 要传递给监听器的ActionEvent - 另请参阅:
-
addItemListener
向模型添加一个ItemListener。- 指定者:
-
addItemListener在接口ButtonModel中 - 指定者:
-
addItemListener在接口ItemSelectable中 - 参数:
-
l- 要添加的监听器 - 另请参阅:
-
removeItemListener
从模型中移除一个ItemListener。- 指定者:
-
removeItemListener在接口ButtonModel中 - 指定者:
-
removeItemListener在接口ItemSelectable中 - 参数:
-
l- 要移除的监听器 - 另请参阅:
-
getItemListeners
返回在此DefaultButtonModel上注册的所有项目监听器的数组。- 返回:
-
所有此模型的
ItemListener或如果当前没有注册任何项目监听器,则返回空数组 - 自:
- 1.4
- 另请参阅:
-
fireItemStateChanged
通知所有已注册对此事件类型感兴趣的监听器。- 参数:
-
e- 要传递给监听器的ItemEvent - 另请参阅:
-
getListeners
返回当前在此模型上注册为FooListener的所有对象的数组。使用addFooListener方法注册FooListener。您可以使用类字面量(例如
FooListener.class)指定listenerType参数。例如,您可以使用以下代码查询DefaultButtonModel实例m的动作监听器:ActionListener[] als = (ActionListener[])(m.getListeners(ActionListener.class));
如果不存在此类监听器,则此方法返回一个空数组。- 类型参数:
-
T- 请求的监听器的类型 - 参数:
-
listenerType- 请求的监听器的类型;此参数应指定一个继承自java.util.EventListener的接口 - 返回值:
-
返回在此模型上注册为
FooListener的所有对象数组,如果没有添加此类监听器,则返回空数组 - 抛出:
-
ClassCastException- 如果listenerType未指定实现java.util.EventListener的类或接口 - 自版本:
- 1.3
- 参见:
-
getSelectedObjects
被重写以返回null。- 指定者:
-
getSelectedObjects在接口ItemSelectable - 返回值:
-
选定对象的列表,或
null
-
setGroup
标识按钮所属的组 - 对于单选按钮而言是必需的,它们在组内是互斥的。- 指定者:
-
setGroup在接口ButtonModel - 参数:
-
group- 按钮所属的ButtonGroup
-
getGroup
返回按钮所属的组。通常与单选按钮一起使用,它们在组内是互斥的。- 指定者:
-
getGroup在接口ButtonModel - 返回值:
-
按钮所属的
ButtonGroup - 自版本:
- 1.3
-