JPanel子类中的Fire操作

时间:2010-09-15 21:03:21

标签: java user-interface swing

我知道如何使用ActionListener类来获取actionPerformed事件 - 但是,我已经实现了自己的JPanel对象,我无法解决的是我如何创建一个动作并表明它已被执行,以便外部动作监听器可以接收它。具体来说,我希望拦截内部组件的一个动作,转换它的getSelectedValue()并将其存储到一个可通过getter获得的局部变量中。然后,我想指出这样的变化,以便外部类可以接收并读取该值并对其进行操作。

有什么想法吗?我想这很简单,但我找不到我在谷歌上寻找的东西。

2 个答案:

答案 0 :(得分:2)

您可以通过延长observer pattern并调用setChangednotifyObservers方法来使用Observable

答案 1 :(得分:2)

请参阅Component.dispatchEvent以分派已在您的组件上定义的事件类型。如果添加新事件类型,则可能需要更多工作。在添加JComponent选项时,了解AbstractButtonlistenerList的{​​{1}}的关系。