在鼠标按下时更改JButton的图标

时间:2015-09-29 16:23:49

标签: java swing jbutton imageicon

一个JPanel中有几个JButton。当用户单击一个Jbutton时,即使释放鼠标,也需要将其显示为按下。我试过了

jButton.setPressedIcon( pressedImageIcon );  

但它只支持鼠标按下。释放鼠标时,会出现按钮的默认图标。我想在按下时更改JButton的图标并按原样保持按下的图标,以便用户知道他点击了什么,并且在点击另一个JButton时需要更改图标。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:2)

听起来你根本不应该使用JButton,而是你应该使用JToggleButton,按下之后保持选择,直到再次按下。您可能希望通过setSelectedIcon(...)将所选图标设置为您希望在按下或选择时显示的图标。

  

...以便用户知道他点击了什么,并且在点击另一个JButton时需要更改图标。

要获得此行为,请将JToggleButtons添加到单个ButtonGroup对象,类似于对JRadioButtons执行此操作的方式。