【问题标题】:Java: What's the difference between ActionEvent and ItemEvent on a JRadioButton?Java:JRadioButton 上的 ActionEvent 和 ItemEvent 有什么区别?
【发布时间】:2010-08-17 03:45:31
【问题描述】:

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

【问题讨论】:

    标签: java swing listener jradiobutton


    【解决方案1】:

    无论是通过用户与按钮交互还是以编程方式(通过setSelected 方法),只要按钮状态发生更改,就会通知ItemListeners。另一方面,ActionListeners 将在用户与按钮交互时被调用(但可以通过onClick 方法以编程方式模拟)。

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

    【讨论】:

    • 知道了! ItemListener - 用户OR程序; ActionListener - 用户。谢谢!
    【解决方案2】:

    ItemEvent 是一个特定事件,它指示在 ItemListener 中由itemStateChanged 指定的组件中的状态发生了变化。 JRadioButton 有开启和关闭两种状态。当单选按钮是button group 的一部分时,ItemEvent 也很有用。

    我认为当您对单选按钮的状态变化感兴趣时应该使用项目侦听器,当您想要在单击单选按钮时执行某些操作时应该使用操作侦听器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-10-02
      • 2011-12-12
      • 2010-09-16
      • 2012-03-14
      • 2012-02-06
      • 2011-02-25
      • 2011-11-22
      • 2015-03-26
      相关资源
      最近更新 更多