2

我想知道当没有发生任何动作时你是否可以在java中发生一个动作事件。我的意思是欺骗它,让它认为一个动作已经发生,而实际上它没有发生,然后运行一个动作事件。我问这个的原因是因为在没有实际事件发生的情况下更新在事件调度线程上运行的东西似乎很容易。让我知道你们中是否有人听说过这件事。谢谢,

4

2 回答 2

6

好吧,你只需要委托给一个方法:

// event listener for the click of the button:
public void actionPerformed(ActionEvent e) {
    doSomething();
}

// other code wanting to do "as if the button was clicked":
doSomething();
于 2013-10-09T15:27:44.140 回答
3

ActionListener.actionPerformed()方法需要一个ActionEvent参数,但您可以直接调用它并传递一个虚拟ActionEvent对象,例如:

listener.actionPerformed(new ActionEvent(source, id, "dummy"));

这是否有意义当然取决于actionPerformed()方法的实际实现。

于 2013-10-09T15:27:57.330 回答