网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > JAVA > J2ME > 核心技术 > J2ME的MVC2开源框架KBOX  

J2ME的MVC2开源框架KBOX

2008-03-30  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏


       创建相应的Action:
网管u家bitscn.net

  public class TestAction implements Action{

    public void excute(KCommand cmd, Item item, Displayable dis, ActionForward forward,Hashtable parameters) { 网管u家bitscn.net

  网管网www.bitscn.com

    MyKGameCanvas mkc = ((MyKGameCanvas)dis);

网管bitscn_com

    mkc.showString("hello world! From "+mkc.getUniqueID()+"."+cmd.getUniqueID()); 网管网www.bitscn.com

    } 网管有家bitscn.net

    }

网管u家u.bitsCN.com

网管u家u.bitsCN.com

       将按钮事件注册给Action:

   DEBUG=true //open the debug model of KBOX

    CMD.MYCMD.ACTION=action.TestAction 网管u家u.bitscn@com

网管bitscn_com

 

网管u家u.bitscn@com

    注意这里的MyKGameCanvas 继承的KGameCanvas,而不是GameCanvas。KBOX的KGameCanvas类继承自GameCanvas,当并没有使用 GameCanvas那种使用线程监听状态的模型,而是重写了keypressed等方法来处理键盘事件。另外,KGameCanvas的重写的按钮事件 的处理已经实现了重复按键情况,而且可以指定重复按键的灵敏度,这点是非常好用的:)

网管联盟bitsCN@com

    KCommand是KBOX扩展的按钮组件。
    KCommand kc = new KCommand("TEST BUTTON", Command.HELP,1,"MYCMD",null);
    第一个参数是按钮的名字,第二参数是按钮类型,第三个参数是优先级,第四个参数是ID名,用于配置文件的映射,对应“ CMD.MYCMD.ACTION=action.TestAction”中的MYCMD,第五个参数是可传递参数,是一个Hashtable类型,用于 向Action传递参数(当然你喜欢的话,也可以将参数提到配置文件里去……)。

网管朋友网www_bitscn_net

    KBOX的Action是一个只有execute方法的接口,任何类只要实现了该接口,都可以是一个Action。

    注册一个键盘事件一样很简单:

   public class TestKeyAction implements Action{

    public void excute(KCommand cmd, Item item, Displayable dis, ActionForward forward,Hashtable parameters) { 网管有家www.bitscn.net

MyKGameCanvas mkc = ((MyKGameCanvas)dis);

网管联盟bitsCN_com

    … 网管下载dl.bitscn.com

    Do your business here. 网管网www_bitscn_com

    .. 网管u家u.bitsCN.com

    }

网管论坛bbs_bitsCN_com

    } 网管u家u.bitsCN.com

网管bitscn_com

      指定键盘事件的处理Action:

 

    DEBUG=true //open the debug model of KBOX

网管论坛bbs_bitsCN_com

    CMD.MYCMD.ACTION=action.TestAction 网管有家www.bitscn.net

    KEY.MYGC.FIRE.ACTION=action.TestKeyAction…

网管网www_bitscn_com


    KBOX的另外一个很实用的特性是DEBUG MODEL。
    这个功能是用于在真机测试时,调试BUG用的。由于真机与模拟器不一定相同,当真机上抛出异常(真机上的异常无法察觉,没有控制台啊!),而模拟 器又一切正常的时候,这个功能就有用了:KBOX将捕获到的异常的用一个ERROR PAGE显示出来。不过注意在发布JAR包时,记得要去掉这个DEBUG模式,否则没事按到个没定义的键盘按键都会捕获到未定义按键处理的异常……
    要打开DEBUG模式需要在配置文件上指定DEBUG=true。
网管u家bitscn.net

中国网管论坛bbs.bitsCN.com

TAGs   框架       事件   一个   MyKGameCanvas   KBOX   public   KCommand      
 上一篇:J2ME的跨平台性了解   下一篇:分享关于j2mexmlReader的轻量级实现
J2ME的MVC2开源框架KBOX 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: