They're both raised once after the mouse button is released and both can have all the information available on the JRadioButton right? Is there any difference?
views:
31answers:
2ItemEvent is specific event that indicates that the state has changed in a component specified by the itemStateChanged
in the ItemListener. JRadioButton has two states on and off. ItemEvent is also useful when a radio button is part of a button group.
I think you should use the item listener when you are interested in state changes in the radio button and an action listener when you want to do something when the radio button is clicked.
An ItemListener
s are notified when ever the state of the button is changed, whether through a user interacting with the button or programmatically (via the setSelected
method). ActionListener
s on the other hand will be called when a user interacts with the button (but can be simulated programmatically via the onClick
method).
Note that a user interacting with the button such as clicking or hitting the space bar will also change the state of the button and raise an item event as well as an action event. Generally, you will want to define either one or the other, don't listen for both action events and item events on the button.