以下方法有什么区别:
jButton.getModel().isArmed()
jButton.getModel().isSelected()
jButton.getModel().isPressed()
我不明白文档的含义,isArmed
其余两个都有明显的文档。但我不知道他们的行为有何不同。
isArmed
方法:
当用户在 上按下鼠标按钮JButton
但尚未释放它时, 将JButton
被武装。然而 武装 状态 并不 意味着 动作 肯定 会 被 触发 , 因为 用户 可以 在 光标 在 上 时 释放 按钮JButton
, 或者 用户 可以 将 光标 移动 到 其他 地方 并释放 . 因此 如果被 武装isArmed
则 返回 true . JButton
,否则返回false
。
ButtonModel的文档解释了不同之处:
在按钮上按下鼠标使模型既武装又被按下。只要鼠标保持按下状态,模型就会保持按下状态,即使鼠标移出按钮也是如此。相反,模型仅在鼠标保持在按钮范围内按下时才启用(它可以移入或移出按钮,但模型仅在按钮内花费的部分时间内启用)。
至于isSelected
:
isSelected() - 指示按钮是否已被选中。只有某些类型的按钮才需要 - 例如单选按钮和复选框。