- 所有父级接口:
ItemSelectable
- 所有已知的实现类:
DefaultButtonModel,JToggleButton.ToggleButtonModel
按钮的状态模型。
此模型用于常规按钮,以及复选框和单选按钮,它们是特殊类型的按钮。实际上,按钮的 UI 负责调用其模型上的方法来管理状态,详情如下:
简而言之,在常规按钮上按下和释放鼠标会触发按钮并导致 ActionEvent 被触发。通过由按钮(通常是空格键)的外观和感觉定义的键盘键可以产生相同的行为。在按钮具有焦点时按下并释放此键将产生相同的结果。对于复选框和单选按钮,刚才描述的鼠标或键盘等效序列会导致按钮被选中。
具体来说,按钮的状态模型在与鼠标一起使用时的工作方式如下:
在按钮顶部按下鼠标会使模型既武装又按下。只要鼠标保持按下状态,模型就会保持按下状态,即使鼠标移出按钮也是如此。相反,模型仅在鼠标保持在按钮范围内被按下时才启用(它可以移入或移出按钮,但模型仅在按钮内花费的时间部分启用)。一个按钮被触发,一个 ActionEvent 被触发,当鼠标在模型被武装时被释放 - 这意味着当鼠标先前被按下该按钮(并且尚未释放)后鼠标被释放到按钮上方。松开鼠标后,模型将解除武装且未按下。
具体来说,按钮的状态模型在与键盘一起使用时的工作方式如下:
在按钮具有焦点时按下外观和感觉定义的键盘键会使模型既武装又按下。只要此键保持按下状态,模型就会保持此状态。释放按键将模型设置为未武装和未按下,触发按钮,并导致 ActionEvent 被发射。
- 自从:
- 1.2
-
方法总结
修饰符和类型方法描述void向模型添加ActionListener。void将ChangeListener添加到模型中。void向模型添加ItemListener。返回按钮的操作命令字符串。default ButtonGroupgetGroup()返回按钮所属的组。int获取按钮的键盘助记符。booleanisArmed()表示对触发按钮的部分承诺。boolean指示按钮是否可以通过输入设备(例如鼠标指针)选择或触发。boolean指示按钮是否被按下。boolean指示鼠标位于按钮上。boolean指示按钮是否已被选中。void从模型中删除ActionListener。void从模型中删除ChangeListener。void从模型中删除ItemListener。void设置触发按钮时作为ActionEvent的一部分发送的操作命令字符串。voidsetArmed(boolean b) 将按钮标记为装备或未装备。voidsetEnabled(boolean b) 启用或禁用按钮。voidsetGroup(ButtonGroup group) 标识按钮所属的组——单选按钮需要,它们在其组内是互斥的。voidsetMnemonic(int key) 为按钮设置键盘助记符(快捷键或加速键)。voidsetPressed(boolean b) 将按钮设置为按下或未按下。voidsetRollover(boolean b) 设置或清除按钮的翻转状态voidsetSelected(boolean b) 选择或取消选择按钮。在接口 java.awt.ItemSelectable 中声明的方法
getSelectedObjects
-
方法详情
-
isArmed
boolean isArmed()表示对触发按钮的部分承诺。- 返回:
true如果按钮已准备好并准备好被触发- 参见:
-
isSelected
boolean isSelected()指示按钮是否已被选中。只有某些类型的按钮需要 - 例如单选按钮和复选框。- 返回:
true如果按钮被选中
-
isEnabled
boolean isEnabled()指示按钮是否可以通过输入设备(例如鼠标指针)选择或触发。- 返回:
true如果按钮已启用
-
isPressed
boolean isPressed()指示按钮是否被按下。- 返回:
true如果按钮被按下
-
isRollover
boolean isRollover()指示鼠标位于按钮上。- 返回:
true如果鼠标在按钮上
-
setArmed
void setArmed(boolean b) 将按钮标记为装备或未装备。- 参数:
b- 按钮是否应该被激活
-
setSelected
void setSelected(boolean b) 选择或取消选择按钮。- 参数:
b-true选择按钮,false取消选择按钮
-
setEnabled
void setEnabled(boolean b) 启用或禁用按钮。- 参数:
b- 是否启用按钮- 参见:
-
setPressed
void setPressed(boolean b) 将按钮设置为按下或未按下。- 参数:
b- 是否应该按下按钮- 参见:
-
setRollover
void setRollover(boolean b) 设置或清除按钮的翻转状态- 参数:
b- 按钮是否处于翻转状态- 参见:
-
setMnemonic
void setMnemonic(int key) 为按钮设置键盘助记符(快捷键或加速键)。- 参数:
key- 指定加速键的 int
-
getMnemonic
int getMnemonic()获取按钮的键盘助记符。- 返回:
- 指定加速键的 int
- 参见:
-
setActionCommand
设置触发按钮时作为ActionEvent的一部分发送的操作命令字符串。- 参数:
s- 标识生成事件的String- 参见:
-
getActionCommand
String getActionCommand()返回按钮的操作命令字符串。- 返回:
-
标识生成的事件的
String - 参见:
-
setGroup
标识按钮所属的组——单选按钮需要,它们在其组内是互斥的。- 参数:
group- 按钮所属的ButtonGroup
-
getGroup
返回按钮所属的组。通常与单选按钮一起使用,单选按钮在其组内互斥。- 实现要求:
-
此方法的默认实现返回
null。子类应该返回由 setGroup() 设置的组。 - 返回:
-
按钮所属的
ButtonGroup - 自从:
- 10
-
addActionListener
向模型添加ActionListener。- 参数:
l- 要添加的监听器
-
removeActionListener
从模型中删除ActionListener。- 参数:
l- 要删除的监听器
-
addItemListener
向模型添加ItemListener。- 指定者:
addItemListener在接口ItemSelectable中- 参数:
l- 要添加的监听器- 参见:
-
removeItemListener
从模型中删除ItemListener。- 指定者:
removeItemListener在接口ItemSelectable中- 参数:
l- 要删除的监听器- 参见:
-
addChangeListener
将ChangeListener添加到模型中。- 参数:
l- 要添加的监听器
-
removeChangeListener
从模型中删除ChangeListener。- 参数:
l- 要删除的监听器
-