简体   繁体   English

如何在J2ME / Blackberry中引发自定义事件?

[英]How to raise custom events in j2me / blackberry?

Just started doing some code porting from .Net CF to Blackberry JDE 4.6.1. 刚开始做一些从.Net CF到Blackberry JDE 4.6.1的代码移植。 But haven't found how to implement custom events. 但是还没有找到如何实现自定义事件的方法。

I have a custom syncManager that raise events in .Net CF so I can update the UI (sort of the observer patron). 我有一个自定义syncManager,它在.Net CF中引发事件,因此我可以更新UI(类似于观察者赞助人)。

Any pointers or help where I can start? 我可以从哪里开始的任何指针或帮助?

I can recommend the j2me-observer project. 我可以推荐j2me-observer项目。 It has a liberal license and will give you an implementation of the observer pattern which isn't included in J2ME. 它具有自由许可证,将为您提供J2ME中未包含的观察者模式的实现。 It can be used to allow UI changes to happen based on fired events. 它可用于允许基于触发事件发生UI更改。

you can send custom event using. 您可以使用发送自定义事件。

//you can use any int value for CUSTOM_EVENT
    fieldChangeNotify(CUSTOM_EVENT);

and you can handle that event using 您可以使用

public void fieldChanged(Field field, int context) {  
   if(cotext == CUSTOM_EVENT){
   Dialog.alert("custom event");  
   }

}  

I can recommend the open source project javaEventing. 我可以推荐开源项目javaEventing。 It's available at http://code.google.com/p/javaeventing , and makes it easy to define, register for and trigger custom events, much like in C#. 可以在http://code.google.com/p/javaeventing上获得 ,并且很容易定义,注册和触发自定义事件,就像在C#中一样。 An example: 一个例子:

Class MyEvent extends EventManager.EventObject {}

EventManager.registerEventListener(new EventManager.GenericEventListener(){
public void eventTriggered(Object sender, Event event) { // <-- The event is triggered, do something.
} }, new MyEvent()); EventManager.triggerEvent(this, new MyEvent()); // <-- Trigger the event

bob 鲍勃

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM