移动通信终端按键输入方法

文档序号:6581388阅读:163来源:国知局

专利名称::移动通信终端按键输入方法
技术领域
:本发明属于移动通信终端
技术领域
,尤其涉及一种移动通信终端按键输入方法。
背景技术
:现有的移动通信终端,如手机,其能够实现的功能越来越多,移动通信终端的键盘作为人机交互的实现工具,其重要性不言而喻。移动通信终端在传统12键产品的基础上,各种全键盘和不规则键盘产品不断涌现,以方便用户更加快捷地输入字符。在移动通信终端的本地输入程序中,平台(产品的操作系统和按键处理程序的统称,下同)会记录功能键状态和输入语言设置并将其显示在界面上以提示用户,保证用户预期的输入与实际输入相符。而对于Java程序,由于缺乏标准接口,全键盘和不规则键盘的按键键值本身难以被传递,要在Java程序中实现字符直接输入显示的难点就在于此。现有的移动通信终端,对于产品中的Java程序,由于缺乏全键盘和不规则键盘字符直接传递的规范和技术方案,只能经过多个界面切换调用产品的本地输入程序实现字符输入,使用时尤为不便。因此,需要一种技术方案,以解决上述的问题。
发明内容本发明的目的在于提供一种移动通信终端按键输入方法,旨在解决全键盘或者不规则键盘字符直接输入显示的问题。本发明是这样实现的,一种移动通信终端按键输入方法,所述的方法包括a、查询被触发按键的枚举键值,将所述被触发按键的枚举键值传递到Java程序;b、所述Java程序判断是否应当输入所述被触发按键的上排数字/字符?如果是,转步骤c,否则转步骤d;c、查询所述Java枚举键值对应的上排数字/符号,获取所述Java枚举键值对应的数字/符号。d、查询所述Java枚举键值对应的小写字符,获取所述Java枚举键值对应的小写字符。更具体的,其中步骤a具体包括a1、查询按键键值与Java枚举键值映射关系表,获取所述被触发按键的Java枚举键值,将所述被触发按键的Java枚举键值传递到所述Java程序。更具体的,其中步骤b具体包括b1、所述Java程序判断Fn键/Shift键的状态,根据判断结果确定是否应当输入所述被触发按键的上排数字/字符?如果是,转步骤c,否则转步骤d。更具体的,其中步骤c具体包括c1、查询Java枚举键值与上排数字/符号的映射关系表,获取所述Java枚举键值对应的上排数字/符号,将所获取的上排数字/符号作为应当显示的字符。更具体的,其中步骤d具体包括d1、所述Java程序判断当前的输入语言设置,查询当前语言对应的Java枚举键值与小写字符的映射关系表,获取所述Java枚举键值对应的小写字符。更具体的,其中步骤d1具体包括判断所述Java枚举键值对应的小写字符是否存在变体?如果是,查询当前语言对应的Java枚举键值与小写字符的映射关系表,获取所述Java枚举键值对应的小写字符变体,否则获取所述Java枚举4建值对应的小写字符。更具体的,其中步骤d之后还包括所述Java程序判断Caps键状态,根据判断结果确定是否应该输入大写字符,如是将所获取的小写字符转换为相应的大写字符,将所转换的大写字符作为应当显示的字符,否则将所述小写字符作为应当显示的字符。更具体的,其中步骤d1之后还包括所述Java程序判断Caps键状态,根据判断结果确定是否应该输入大写字符如是将所获取的小写字符变体转换为相应的大写字符,将所转换的大写字符作为应当显示的字符,否则将所述小写字符作为应当显示的字符。本发明克服现有技术的不足,当移动通信终端全键盘或者不规则键盘上的按键被触发时,移动通信终端的平台忽略其当前的输入状态,将被触发按键的键值转换为与被触发按键——对应的Java枚举键值,传递到Java程序,然后在Java程序内部进行输入状态的控制,查找该Java枚举键值对应的字符。本发明提供的技术方案使得移动通信终端可以在Java程序中直接输入显示全键盘和不规则键盘字符的技术方案,并且在保持Java程序独立性的同时易于进行多语种扩展,从而显著提高用户体验,对于MSN聊天等需要频繁输入字符的Java程序优势尤为明显。图1是本发明实施例流程图。具体实施例方式本发明提供的技术方案是当移动通信终端全键盘或者不规则键盘上的按键被触发时,移动通信终端的平台忽略其当前的输入状态,将被触发按键的键值转换为与被触发按键——对应的Java枚举键值,传递到Java程序,然后在Java程序内部进行输入状态的控制,查找该Java枚举键值对应的字符。为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。在移动通信终端上,为使产品更加集约化,一^fe多用是很常见的情况,移动通信终端的键盘按键通常可以分成两种类型1)输入键同一个输入键可以在不同情况下分别输入数字/符号/大写字符/小写字符等等;2)功能键控制输入键的具体输入内容,常用的功能键有(具体功能键定义和控制规则依赖于键盘设计)A)Fn键/Shift键控制输入键输入上排数字/符号或者下排字符(例如,按下一次表示输入一个上排数字/符号,按下两次表示连续输入上排数字/符号,按下三次表示输入下排字符,如此循环)B)Caps键控制输入大写字符或者小写字符(例如,按下一次表示输入一个大写字符"Abc,,,按下两次表示连续输入大写字符"ABC",按下三次表示输入小写字符"abc",如此循环)另外,输入语言设置也会控制输入键输入的字符,而且某些语言的某些字符存在变体,需要进一步判断输入行为以决定输入哪个字符(例如E键对应E/BBBE),输入语言通常可以通过菜单项进行i殳置。本发明流程图如图1所示,具体包括如下的步骤1、用户触发移动通信终端上的按^t;2、移动通信终端的平台忽略其当前的输入状态,查询被触发按键的键值与Java枚举键值的映射关系表,将按键键值转换为对应的Java枚举键值,然后传递到Java程序;其中,各个输入键对应的Java枚举键值可直接采用英文小写字母Unicode码typedefenum{J2ME—KEY_A='£>',J2ME—KEY_B='b',J2MEKEYZ-'z',J2ME—KEY—Fn=-34,J2ME—KEY—Shift=J2ME—KEY—Fn,J2ME—KEY—Caps=-37,}KeyType;按键键值与Java枚举键值的映射表如表一所示:物理MJava枚樣值M类型Aa(U+0061)输入键Bb(U+0062)输入键Cc(U+0063)输入键Dd(U+0064)输入键e(U+0065)输入键Ff(U+0066)输入键Gg(U+0067)输入键Hh(U+0068)输入键1i(U+0069)输入键vJj(U+006a)输入键Kk(U+006b)输入键匕I(U+006c)输入键Mm(U+006d)输入键Nn(U+006e)输入键〇o(U+006f)输入键Pp(U+0070)输入键Qq(U+0071)输入键Rr(U+0072)输入键Ss(U+0073)输入键Tt(U+0074)输入键Uu(U+0075)输入键Vv(U+0076)输入键ww(U+0077)输入键Xx(U+0078)输入键丫y(U+0079)输入键zz(U+007a)输入键Soft1-6功能键Soft2-7功能键Up-1功能键Down-2功能键Left-3功能键Right-4功能键<table>tableseeoriginaldocumentpage9</column></row><table>表一3、Java程序判断Fn键/Shift键状态,根据判断结果确认是否应该输入上排数字/符号?如是,转步骤4,否则转步骤5;4、查询Java枚举键值与上排数字/符号的映射表,获取应该显示的输入值(上排数字/符号)Java枚举键值与上排数字/符号的映射表按照如下格式以文本方式写在Java程序的jad文件里,从而^f吏于维护和扩展格式定义数字/符号的映射表标识Java枚举键值1=数字/符号1;Java枚举键值2=数字/符号2...实例Private-Key-Symbols:q=#w=1e=2r=31=(y=)u=—i=-o=+p=@a=*s=4d=5f=6g=/h=:j=;k='l="z=7x=8c=9v=7b=!n=,m=.5、Java程序判断当前的输入语言i殳置,查询当前输入语言对应的Java枚举键值与小写字符的映射表,判断该小写字符是否存在变体,如是则转步骤6;如否则转步骤7;Java4丈举4定值与各种输入语言小写字符的映射表按照如下格式以文本方式写在Java程序的jad文件里,从而便于维护和扩展格式定义某输入语言小写字符的映射表标识Java枚举键值1=小写字符1\小写字符1的变体1(如果有的话)\小写字符1的变体2(如果有的话)V..Java枚写字符2的变体2(如果有的话)V..实例Private-Key-English:q=qw=we=er=rt=ty=yu=ui=i0=0p=pa=as=sd=df=fg=gh=hj=jk=kl=lz=zx=xc=cv=vb=bn=nm=mPrivate-Key-French:q=qw=we=e\6\6\^\6r=rt=ty=yu=u\Ci\0\Ui=i\T\To=o\6p=pa=a\a\as=sd=df=fg=gh=hj=jk=kl=lz=zx=xc=c\g;v=vb=bn=nm=m6、根据Java枚举键值与对应的小写字符映射表选择被触发按键对应的小写字符变体,转步骤8;具体来说,Java程序启动定时器,如果在定时器超时前收到平台发来的相同按键事件,则取该字符的下一个变体,然后重复这个过程,即在该按键对应的字符及其变体之间进行循环选择,直到定时器超时,将定时器超时前最后选择的小写字符变体确认为被触发按键对应的小写字符变体;7、根据Java枚举键值与对应的小写字符映射表选择被触发按键对应的小写字符,转步骤8;8、Java程序判断Caps键状态,根据判断结果确定是否应该输入大写字符,如是则转步骤9,否则转步骤10;9、将步骤7获取的小写字符或者步骤6获取的小写字符变体转换为相应的大写字符,作为应该显示的输入值(大写字符);10、将步骤7获取的小写字符或者步骤6获取的小写字符变体作为应该显示的输入值。如果用户需要切换Caps键状态或者Fn键/Shift键状态,平台会将该功能键对应的Java枚举键值传送给Java程序,如Caps键键值-37,Fn键/Shift键键值-34,然后由Java程序自行记录该功能键的状态(被按下几次),并在Java程序界面上表现给用户。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。权利要求1、一种移动通信终端按键输入方法,所述的方法包括a、查询被触发按键的枚举键值,将所述被触发按键的枚举键值传递到Java程序;b、所述Java程序判断是否应当输入所述被触发按键的上排数字/字符?如果是,转步骤c,否则转步骤d;c、查询所述Java枚举键值对应的上排数字/符号,获取所述Java枚举键值对应的数字/符号。d、查询所述Java枚举键值对应的小写字符,获取所述Java枚举键值对应的小写字符。2、根据权利要求1所述的方法,其特征在于,其中步骤a具体包括a1、查询按键键值与Java枚举键值映射关系表,获取所述被触发按键的Java枚举键值,将所述被触发按键的Java枚举键值传递到所述Java程序。3、根据权利要求1所述的方法,其特征在于,其中步骤b具体包括b1、所述Java程序判断Fn键/Shift键的状态,根据判断结果确定是否应当输入所述被触发按键的上排数字/字符?如果是,转步骤c,否则转步骤d。4、根据权利要求1所述的方法,其特征在于,其中步骤c具体包括c1、查询Java枚举键值与上排数字/符号的映射关系表,获取所述Java枚举键值对应的上排数字/符号,将所获取的上排数字/符号作为应当显示的字付。5、根据权利要求1所述的方法,其特征在于,其中步骤d具体包括d1、所述Java程序判断当前的输入语言设置,查询当前语言对应的Java枚举键值与小写字符的映射关系表,获取所述Java枚举键值对应的小写字符。6、根据权利要求1所述的方法,其特征在于,其中步骤d1具体包括判断所述Java枚举键值对应的小写字符是否存在变体?如果是,查询当前语言对应的Java枚举键值与小写字符的映射关系表,获取所述Java枚举键值对应的小写字符变体,否则获取所述Java枚举键值对应的小写字符。7、根据权利要求5所述的方法,其特征在于,其中步骤d之后还包括所述Java程序判断Caps键状态,根据判断结果确定是否应该输入大写字符,如是将所获取的小写字符转换为相应的大写字符,将所转换的大写字符作为应当显示的字符,否则将所述小写字符作为应当显示的字符。8、根据权利要求6所迷的方法,其特征在于,其中步骤d1之后还包括所述Java程序判断Caps键状态,根据判断结果确定是否应该输入大写字符,如是将所获取的小写字符变体转换为相应的大写字符,将所转换的大写字符作为应当显示的字符,否则将所述小写字符作为应当显示的字符。全文摘要本发明适用于移动终端
技术领域
,提供了一种移动通信终端按键输入方法,所述的方法包括a.查询被触发按键的枚举键值,将所述被触发按键的枚举键值传递到Java程序;b.所述Java程序判断是否应当输入所述被触发按键的上排数字/字符?如果是,转步骤c,否则转步骤d;c.查询所述Java枚举键值对应的上排数字/符号,获取所述Java枚举键值对应的数字/符号。d.查询所述Java枚举键值对应的小写字符,获取所述Java枚举键值对应的小写字符。本发明提供的技术方案使得移动通信终端可以在Java程序中直接输入显示全键盘和不规则键盘字符的技术方案,并且在保持Java程序独立性的同时易于进行多语种扩展,从而显著提高用户体验。文档编号G06F3/023GK101655742SQ20091018989公开日2010年2月24日申请日期2009年9月4日优先权日2009年9月4日发明者彬杨申请人:惠州Tcl移动通信有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1