| 网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 |
![]() |
| Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道 |
| 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 |
将按钮事件注册给Action:
| DEBUG=true //open the debug model of KBOX
CMD.MYCMD.ACTION=action.TestAction 网管u家u.bitscn@com |
网管bitscn_com
注意这里的MyKGameCanvas 继承的KGameCanvas,而不是GameCanvas。KBOX的KGameCanvas类继承自GameCanvas,当并没有使用 GameCanvas那种使用线程监听状态的模型,而是重写了keypressed等方法来处理键盘事件。另外,KGameCanvas的重写的按钮事件 的处理已经实现了重复按键情况,而且可以指定重复按键的灵敏度,这点是非常好用的:)
KCommand是KBOX扩展的按钮组件。
KCommand kc = new KCommand("TEST BUTTON", Command.HELP,1,"MYCMD",null);
第一个参数是按钮的名字,第二参数是按钮类型,第三个参数是优先级,第四个参数是ID名,用于配置文件的映射,对应“ CMD.MYCMD.ACTION=action.TestAction”中的MYCMD,第五个参数是可传递参数,是一个Hashtable类型,用于 向Action传递参数(当然你喜欢的话,也可以将参数提到配置文件里去……)。
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 |
|
0
|
评论加载中…