isArmed,isPressed和isSelected之间的区别

时间:2013-03-31 07:40:29

标签: java swing jbutton

以下方法有什么区别:

jButton.getModel().isArmed()
jButton.getModel().isSelected()
jButton.getModel().isPressed()

我不明白文档对isArmed所说的内容,其余两篇文档都有明显的文档。但我不知道他们的表现如何。

2 个答案:

答案 0 :(得分:7)

isArmed表示:

当用户在JButton上按下鼠标按钮但尚未释放时,JButton处于待命状态。然而,武装状态并不意味着肯定会触发动作,因为用户可以在光标位于JButton上时释放按钮,或者用户可以将光标移动到其他位置并释放.Hence {如果isArmed已布防,则{1}}返回true,否则返回JButton

答案 1 :(得分:1)

ButtonModel的文档解释了差异:

  

在按钮顶部按下鼠标可使模型同时布防和按下。只要鼠标保持向下,即使鼠标移动到按钮外,模型也会保持按下状态。相反,只有鼠标在按钮范围内按下时才会启用模型(它可以移入或移出按钮,但模型仅在按钮内花费的时间内启用。)

至于isSelected

  

isSelected() - 表示是否已选择该按钮。仅适用于某些类型的按钮 - 例如单选按钮和复选框。