我需要听一个Jbutton被按下但是我的实现似乎不正确 . 在包含JButton的类中
public JButton button() {
return button;
}
在类中(称之为 listenerClass
)II监听按钮
buttonClass.button().addActionListener(new buttonActionListener());
public class buttonActionListener implements ActionListener {
public void actionPerformed(ActionEvent e) {
//local method calls
}
}
我需要在 listenerClass
中拥有监听器,因为该类包含我需要的逻辑和方法 . 我认为发布整个JButton是不正确的 . 我不确定如何只发布按钮actionListener然后我可以在 listenerClass
中做我喜欢的事情 . buttonClass
对 listenerClass
一无所知
提前致谢 :)
1 回答
实现此目的的一种方法是向委派给按钮的
buttonClass
添加自定义方法 . 例如,您可以添加一个名为addSomethingHappenedListener
的方法,该方法将在内部调用`button.addActionListener',并且调用者不需要知道详细信息 .通过这种方式,调用者甚至不需要知道它只是某个事件发生的按钮 .