gpt4 book ai didi

java - 在 J2ME 中创建我自己的事件

转载 作者:行者123 更新时间:2023-12-02 00:12:12 26 4
gpt4 key购买 nike

我正在制作一个调用 Web 服务异步的小型应用程序,我想在响应完成时触发加载完成事件,以便能够移至下一个表单

我怎样才能以好的方式做到这一点?

最佳答案

Java 中的事件触发需要以下元素

  • 用于传输有关事件的信息的事件类
  • 描述 Bean 如何通知相关方(称为监听器)的接口(interface) 跟踪监听器的数据结构
  • 添加和删除监听器的注册方法
  • 触发事件的代码

事件类将像这样扩展 java.util.EventObject:

public class MyEventClass extends java.util.EventObject {
//here's the constructor
public MyEventClass(Object source) {
super(source);
}
}

界面将如下所示:

 public interface MyEventClassListener {
public void handleMyEventClassEvent(EventObject e);
}

事件源看起来像这样:

public class MyEventSource {
private List _listeners = new ArrayList();
public synchronized void addEventListener(MyEventClassListener listener){
_listeners.add(listener);
}
public synchronized void removeEventListener(MyEventClassListener listener){
_listeners.remove(listener);
}
// call this method whenever you want to notify
//the event listeners of the particular event
private synchronized void fireEvent(){
MyEventClass event = new MyEventClass(this);
Iterator i = _listeners.iterator();
while(i.hasNext()){
((MyEventClassListener) i.next()).handleMyEventClassEvent(event);
}
}
}

事件监听器看起来像这样:

public class MyEventListener implements MyEventClassListener {
// ... code here

//implement the required method(s) of the interface
public void handleMyEventClassEvent(EventObject e) {
// handle the event any way you see fit
}
}

您需要通过调用 MyEventSource 对象的 addEventListener 方法来注册 MyEventListener 对象。

祝你好运,请随时与我联系以了解更多详细信息。

关于java - 在 J2ME 中创建我自己的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12562272/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com