Java:JRadioButton上的ActionEvent和ItemEvent有什么区别?

时间:2010-08-17 03:45:31

标签: java swing listener jradiobutton

鼠标按钮释放后,它们都会被提升一次,并且两者都可以获得JRadioButton上的所有可用信息吗?有什么不同吗?

2 个答案:

答案 0 :(得分:7)

当按钮的状态发生变化时,无论是通过用户与按钮交互还是通过编程方式(通过ItemListener方法),都会通知setSelected。另一方面,当用户与按钮交互时,将调用ActionListener(但可以通过onClick方法以编程方式进行模拟)。

请注意,与按钮交互的用户(例如单击或按空格键)也会更改按钮的状态并引发项目事件和动作事件。通常,您需要定义一个或另一个,不要在按钮上同时监听动作事件和项目事件。

答案 1 :(得分:0)

ItemEvent是一个特定事件,指示ItemListener中itemStateChanged指定的组件中的状态已更改。 JRadioButton开启和关闭两个州。当单选按钮是button group的一部分时,ItemEvent也很有用。

我认为当您想要在单击单选按钮时执行某些操作时,如果您对单选按钮和动作侦听器中的状态更改感兴趣,则应使用项侦听器。