首页|嵌入式系统|显示技术|模拟IC/电源|元件与制造|其他IC/制程|消费类电子|无线/通信|汽车电子|工业控制|医疗电子|测试测量
首页 > 分享下载 > 消费类电子 > 如何实现J2ME对话框

如何实现J2ME对话框

资料介绍
如何实现J2ME对话框



如何实现J2ME对话框
在手机这么小的屏幕上开发应用,难点之一就是频繁的屏幕切换。尽管midp2.0的UI
部分已经很丰富了,但这些UI部件都是基于事件回调的。这在处理大量的、简单的问答
式交互时显得力不从心。
本文实现了一个阻塞当前线程的对话框,简要地说,你可以使用诸如win32API中dia
log函数那样的方式来实现对话框并阻塞等待返回值,然后根据返回值进行不同的处理。
听起来很诱人吧。
首先回顾一下MIDP UI的事件处理机制。有两个要点:
1)首先UI部分由系统的一个线程负责维护。也就是说不能阻塞系统的事件处理方法

2)事件处理使用的是一种回调机制。首先UI部件使用诸如setCommandListener之类
的方法为自己注册一个回调接口(其中的回调方法由用户实现);等到触发了相应事件
就调用这个注册好的接口的回调方法。
以下是一个实现了CommandListener的类的代码片断:

Form f=new Form("Hello world");
f.addCommand(exit);
f.setCommandListener(this);
 
 
可以想象基于事件回调的处理方式,在处理大量的、简单的问答式交互时显得力不从
心。你不得不为每一个仅仅是询问要不要继续的对话框而实现一个又一个类,或者处理
一个复杂的回调函数。如果选择后者,那么在一个又一个的if-
else中处理不同逻辑事件的代码片断一定会烦死你。
较好的做法
这时候我们不免怀念一下win32 Api中对话框函数的处理方式:

int choose=Dialog(title,type……);
if(choose==OK){……}
else if(choose==Cancel){……}
 
 
标签:如何实现对话
如何实现J2ME对话框
本地下载

评论