您能否在Java中调用不带动作的动作事件

问题描述 投票:2回答:2

我想知道当没有动作发生时是否可以在java中发生动作事件。我的意思是诱使它认为未执行某操作已发生,然后运行一个操作事件。我之所以这样问,是因为似乎很容易在没有实际事件发生的情况下更新在事件分发线程上运行的内容。让我知道你们中是否有人听说过。谢谢,

java swing event-dispatch-thread actionevent
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();

3
投票

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

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

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


0
投票

它要求我将来源标识为对象。我能解决这个问题吗?

© www.soinside.com 2019 - 2024. All rights reserved.