设置虚拟键盘的方法及装置
技术领域
本发明涉及电子设备领域,尤其是采用虚拟键盘进行输入的设备,更具体而言,本发明涉及在电子设备中设置虚拟键盘的方法及采用该方法的装置。
背景技术
越来越多的电子设备采用触摸屏,并且用虚拟键盘来代替传统的机械键盘(或称为物理键盘或实体键盘),也有的混合使用机械键盘和虚拟键盘。
虚拟键盘也被称为软键盘,通过软件的实现,在屏幕上显示出类似机械键盘一样的按键布局,用户触按触摸屏上的虚拟按键来完成按键操作。目前应用的虚拟键盘主要有两种,一种类似于电脑的标准键盘,一种类似于电话机的小键盘。
随着使用虚拟键盘的电子设备的种类和功能日益多样,用户希望根据自己的使用习惯,或者针对在设备上执行的具体任务,个性化地设计、配置、修改虚拟键盘,从而方便使用。另一方面,虚拟键盘是设置在屏幕上,屏幕同时还需要显示其它的内容,如,图标、文字、图形、提示框等等。不同设备的屏幕的形状大小各异,在执行不同的应用或者功能时对有限的屏幕面积的使用方式也各异。这些也提出了对虚拟键盘进行灵活设计的需求。由于虚拟键盘是由软件实现的,对虚拟键盘进行灵活设计是可能的。
例如,在Windows操作系统和Android操作系统中,提供了自定义虚拟键盘的设置,但需要在软件后台操作,还需要使用特定的程序代码来实现,自定义的过程不够直观,需要较多的专门知识才能完成。
另一种方案是提供几种预先设计好的虚拟键盘,用户根据使用的需要选择调取一种合适的键盘来使用。
还有一种方案是改变虚拟键盘的外观,用户可以选择不同风格的键盘外观,键盘的风格包括颜色、背景图形等。
本发明的目的之一是,提供一种方法,用于方便灵活地设置虚拟键盘。本发明的再一个目的是,提供一种电子设备,使得用户可以方便和灵活地在该设备上设置虚拟键盘。
发明内容
根据本发明的方案,提供一种在具有触摸屏显示器的电子设备上设置虚拟键盘的方法,包括步骤:提供键盘区和位于键盘区内的多个虚拟按键,每个虚拟按键对应显示屏上的虚拟按键区,虚拟按键区之间具有键间区,键间区包括行间隔区和键间隔区,每个虚拟按键与主丝印字符和副丝印相关联;所述方法还包括步骤:检测在触摸屏上的拖动操作;响应于检测到的拖动操作,根据拖动操作的起始点位置和结束点位置,改变相应的虚拟按键的设置,所述改变包括对按键进行移动、位置互换、增加、或者删除;当拖动操作的起始点对应于第三虚拟按键,结束点对应于键盘区的行间隔区,在行间隔区相应的位置增加一行空白的按键,并将第三虚拟按键移动到该新增加的行中结束点对应的位置;当拖动操作的起始点对应于第四虚拟按键,结束点对应于键盘区的键间隔区,在该键间隔区对应的位置增加一个虚拟按键的位置,并将第四虚拟按键移动到该位置。
根据本发明的另一方面,提供一种具有触摸屏显示器的电子装置,包括存储器、处理器、控制器、触摸屏显示器、接触/移动模块,以及一个或多个程序,所述程序存储在存储器中,并被配置为由处理器执行;所述接触/移动模块用于检测在触摸屏上的接触和移动操作,并为程序的执行提供检测数据;所述程序包括:用于提供虚拟键盘的键盘区和虚拟按键的指令,每个虚拟按键对应显示屏上的虚拟按键区,虚拟按键区之间具有键间区,键间区包括行间隔区和键间隔区,每个虚拟按键与主丝印字符和副丝印字符相关联;用于检测在触摸屏上的拖动操作的指令;用于响应于检测到的拖动操作,根据拖动操作的起始点位置和结束点位置,改变相应的虚拟按键的设置的指令;用于当拖动操作的起始点对应于第一虚拟按键,结束点对应于第二虚拟按键,将第一虚拟按键与第二虚拟按键互换位置的指令;用于当拖动操作的起始点对应于第三虚拟按键,结束点对应于键盘区的行间隔区,在行间隔区相应的位置增加一行空白的按键,并将第三虚拟按键移动到新增加的行中结束点对应的位置的指令;用于当拖动操作的起始点对应于第四虚拟按键,结束点对应于键盘区的键间隔区,在该键间隔区对应的位置增加一个虚拟按键的位置,并将第四虚拟按键移动到该位置的指令;用于当拖动操作的起始点对应于第五虚拟按键,结束点对应于键盘区以外的位置,删除第五虚拟按键的指令;用于当拖动操作的起始点对应于键盘区以外的位置,结束点对应于键盘区的行间隔区,在所述行间隔区对应的位置增加一行空白的虚拟按键的指令;用于当拖动操作的起始点对应于键盘区以外的位置,结束点对应于键盘区的键间隔区,在该键间隔区对应的位置增加一个空白虚拟按键的指令。
本发明实施例还提供了具有触摸屏显示器的电子装置,包括存储器、处理器、控制器、触摸屏显示器、接触/移动模块,以及一个或多个程序,所述程序存储在存储器中,并被配置为由处理器执行;所述接触/移动模块用于检测在触摸屏上的接触和移动操作,并为程序的执行提供检测数据;所述程序包括:用于提供虚拟键盘的键盘区和虚拟按键的指令,每个虚拟按键对应显示屏上的虚拟按键区,虚拟按键区之间具有键间区,键间区包括行间隔区和键间隔区,每个虚拟按键与主丝印字符和副丝印字符相关联;用于提供扩展按键区的指令,所述扩展按键区用于显示和操作副丝印字符,扩展按键区在显示和隐藏两种状态之间切换;正常情况下扩展按键区处于隐藏状态,当对其进行特定操作后转换成显示状态,所有的副丝印字符都被显示;用于检测在触摸屏上的拖动操作的指令;用于响应于检测到的拖动操作,根据拖动操作的起始点位置和结束点位置,改变相应的虚拟按键的设置的指令;用于当拖动起始点对应于按键区,结束点对应于键盘区的键间隔区,在结束点对应的位置增加新的虚拟按键,将起始点对应的按键区的主丝印字符设置为新增加键的主丝印,起始点对应的按键区的第一副丝印变为该起始点对应的按键的主丝印的指令;用于当拖动起始点对应于按键区,结束点对应于键盘区的行间隔区,在结束点对应的位置增加一行空白的虚拟按键,将起始点对应的按键区的主丝印字符设置为结束点在新增加的行中对应位置的虚拟按键的主丝印字符,起始点对应的按键区的第一副丝印字符变为该起始点对应的按键的主丝印字符的指令;用于当拖动起始点对应于一个副丝印字符,结束点对应于键盘区的键间隔区,在结束点对应的位置增加新的虚拟按键,将所述副丝印字符设置为新增加键的主丝印字符,起始对应的扩展按键区的其它副丝印字符的优先级设置相应调整的指令;用于当拖动起始点对应于一个副丝印字符,结束点对应于键盘区的行间隔区,在结束点对应的位置增加一行空白的虚拟按键,将所述副丝印字符设置为结束点在新增加的行中对应位置的虚拟按键的主丝印字符的指令;用于当拖动起始点对应于按键区,结束点对应于另一虚拟按键的扩展按键区,将起始点对应的按键区的主丝印字符设置为所述另一虚拟按键的副丝印字符,起始点对应的按键区的第一副丝印字符变为该起始点对应的按键的主丝印字符的指令;用于当拖动起始点对应于一个副丝印字符,结束点对应于另一虚拟按键的扩展按键区,将所述副丝印字符设置为所述另一虚拟按键的副丝印字符的指令;用于当拖动起始点对应于的第六按键区,结束点对应于第六按键区,将第六按键区的主丝印字符移动到第七按键区成为主丝印字符,同时将第七按键区的原主丝印字符修改成为其第一副丝印字符,第六按键区的第一副丝印字符修改成为其新的主丝印字符的指令。
本发明还提供一种在具有触摸屏显示器的电子设备上设置虚拟键盘的方法,包括步骤:提供键盘区和位于键盘区内的多个虚拟按键,每个虚拟按键对应显示屏上的虚拟按键区,虚拟按键区之间具有键间区,键间区包括行间隔区和键间隔区;每个虚拟按键与特定字符相关联,特定字符包括主丝印字符和副丝印字符,在所述按键区主要地显示主丝印字符,次要地显示部分或全部副丝印字符;提供扩展按键区,用于显示和操作副丝印字符,扩展按键区在显示和隐藏两种状态之间切换,正常情况下扩展按键区处于隐藏状态,当对其进行特定操作后转换成显示状态,所有的副丝印都被显示;提供按键备选区,用于显示可能被添加到按键区或者扩展按键区的字符;检测在触摸屏上的拖动操作;响应于检测到的拖动操作,根据拖动操作的起始点位置和结束点位置,改变相应的虚拟按键的设置,所述改变包括对所述字符进行移动、增加、或者删除,也包括基于字符改变而生成新的按键,所述改变在键盘区、扩展按键区和按键备选区三者中的任两个之间进行,或者在所述三者中的任一个的内部进行。
本发明还提供一种具有触摸屏显示器的电子装置,包括存储器、处理器、控制器、触摸屏显示器、接触/移动模块,以及一个或多个程序,所述程序存储在存储器中,并被配置为由处理器执行;所述接触/移动模块用于检测在触摸屏上的接触和移动操作,并为程序的执行提供检测数据;所述程序包括:用于提供虚拟键盘的键盘区和虚拟按键的指令,每个虚拟按键对应显示屏上的虚拟按键区,虚拟按键区之间具有键间区,键间区包括行间隔区和键间隔区,每个虚拟按键与特定字符相关联,特定字符包括主丝印字符和副丝印字符,在所述按键区主要地显示主丝印字符,次要地显示部分或全部副丝印字符;用于提供扩展按键区的指令,所述扩展按键区用于显示和操作副丝印字符,所述扩展按键区在显示和隐藏两种状态之间切换,正常情况下扩展按键区处于隐藏状态,当对其进行特定操作后转换成显示状态,所有的副丝印都被显示;用于提供按键备选区的指令,所述按键备选区用于显示可能被添加到按键区或者扩展按键区的字符;用于检测在触摸屏上的拖动操作的指令;用于响应于检测到的拖动操作,根据拖动操作的起始点位置和结束点位置,改变相应的虚拟按键的设置的指令,所述改变包括对所述字符进行移动、增加、或者删除,也包括基于字符改变而生成新的按键,所述改变在键盘区、扩展按键区和按键备选区三者中的任两个之间进行,或者在所述三者中的任一个的内部进行。
附图说明
图1是本发明的电子装置的架构示意图;
图2是本发明的虚拟键盘及按键备选区的示意图;
图3是按键区坐标示意图;
图4表示对键盘区进行设置的第一实施例的步骤;
图5A-5F是对键盘区进行设置的第一实施例的示意图;
图6表示对键盘区进行设置的第二实施例的步骤;
图7A-7H是对键盘区进行设置的第二实施例的示意图。
具体实施方式
下面描述的本发明的实施例是以触摸屏和电脑为例。事实上,本发明的方案不限于触摸屏,不限于常见的压感式、电磁感应式触摸屏、以及红外式、表面声波式的触摸屏,滚轮的点压结合滚动带来的角位移也可以实现与点击触摸屏并拖动的效果,同样,操纵杆、方向钮、或者按钮结合方向键、甚至鼠标的点击与拖动结合都可以类似地实现这一效果。其它的用以改进手指对触摸屏的操作方式,如光学感应、手势识别等非接触式的方案,它们都可以让用户以类似触摸屏的方式对设备进行输入、控制等操作,都可以实施本发明的方案。
本发明的方案除了包括个人电脑、手机这样的设备之外,也可以包括游戏机,也可以包括在机场、会议中心、商场等公共场所提供的信息系统,也可以包括PDA、音乐或视频播放器、便携式多功能设备等。
本发明的方案中的字符包括字符串,也包括退格、回车、空格、TAB键、大写键、SHIFT键、CTRL键、ALT键、以及功能键所对应的字符表示。这些键在键盘上都由丝印字符加以表示,并与特定的字符或者功能相关联,当按键被触发,要么输入相应的字符,要么执行特定的功能。虽然在软件的实现方面,功能键与字母键在工作机理方面有所区别,但在设置虚拟键盘的按键位置的层面,它们可以等同对待,为了表述的简便,将各种按键的表示统称为字符。
图1示出的是本发明的电子装置的架构示意图。该电子装置10包括处理器11、存储器12、控制器13、电力系统14,还包括输入/输出模块15,用来提供各种输入输出接口,接受来自机械键盘或虚拟键盘的输入并提供向装置以外的输出;还包括通讯模块16,用来通过互联网、移动通讯网或者无线局域网等网络实现与外界的通讯。该装置还包括应用模块17,提供网页浏览、多媒体处理与播放等各种应用。
显示模块18在控制器的控制下,将文字、图形、图标显示给用户,并提供虚拟键盘的显示。作为一个特定的实施例,显示模块通过触摸屏来显示上述的内容。
接触/移动模块19在硬件方面与触摸屏连接,并包括存储于存储器中用于处理用户手指对触摸屏的接触和移动等操作动作的软件。接触/移动模块检测和判断是否在触摸屏上有接触(如轻敲、长按、双击)的动作,有否有拖动的操作,以及是否手指已经离开接触,接触/移动模块还跟踪手指移动的路径,确定接触点、离开点的位置,并确定移动的速率(移动的快慢)、速度(移动的快慢及方向)、加速度(快慢的变化、方向的变化)。接触/移动模块对接触和移动的检测与处理并不限于单个手指的操作(单重操作),也可以是多重操作,即多个手指的同时操作。
控制器13对上述各模块的工作与协同进行控制。
电子装置在显示屏上显示本发明提供的虚拟键盘及按键备选区的示例如图2所示。
在本发明的方案中,虚拟键盘是在电子设备的触摸屏上实现的模拟物理键盘的软件功能,包括虚拟键盘的显示和触摸屏事件的响应。虚拟键盘的显示是指软件在显示屏上显示出键盘的样子以供操作者进行键盘操作;触摸屏事件的响应则是指软件根据操作者在触摸屏上的接触、移动和离开的动作,分析判断动作的含义,以改变屏幕的显示或发出表征键盘动作的指令。
键盘区100是显示屏上一个有边界的区域,键盘的显示和响应都被局限于该区域内,键盘区也可以是不止一个区域,本发明的一个实施例中键盘区100是一个矩形的区域。
键盘区100之内分布着多个虚拟按键102,这里以常见的电脑键盘为例,即QWERT键盘,虚拟键盘也可以是传统电话机的四行三列式并附带几个功能键样式的键盘。
表征键盘动作的指令通常是以对一个按键所进行的操作为单位进行的,在虚拟键盘中被显示成一个类似物理按键的局部区域,在该区域内的事件响应也会得出同样的指令结果。这样一个集成区域被称为一个虚拟按键。
本领域技术人员可以理解,当侧重综合地考虑虚拟按键所在的区域、它对动作的响应以及相应的指令结果时,采用虚拟按键的说法,即图2中的虚拟按键102。而当描述的侧重点是一个虚拟按键在显示屏上所占用的区域的大小和边界时,则采用按键区的说法,即图2中的按键区101。虚拟按键102与按键区101在位置上是重合的,只是各自所代表的含义有不同的侧重。
图2还示出了键间区,即键盘区中除所有虚拟按键区以外的部分,键间区包括行间隔区103和键间隔区104。行间隔区103包括相邻两行虚拟按键之间的间隔区,以及最上一行按键上方至键盘区100的上边界的间隔区,以及最下一行按键下方至键盘区100的下边界的间隔区。键间隔区104包括左右相邻两个虚拟按键之间的间隔区,以及最左侧按键左方至键盘区100的左边界的间隔区,以及最右侧按键右方至键盘区100的右边界的间隔区。
一个虚拟按键102可以有若干个相对应的扩展虚拟按键区202,简称为扩展按键区202。类似于上文对虚拟按键102和按键区101的描述,扩展按键与扩展按键区也是重合的,含义各有侧重。扩展按键区202平时是不显示的,图2中以虚拟按键O为例,当对虚拟按键O进行某种特定的操作(如长按)时,它所对应的扩展按键区202被激活并显示出来,其显示、相应的功能与键盘区的虚拟按键相同,并被显示在相应的虚拟按键的周边,作为示例,图2中所示出的是显示在虚拟按键O的上方。类似于键盘区100的键间区,扩展按键区202也包括键间区,它通常是键间隔区,但也可以有行间隔区。作为示例,扩展按键区202可以通过长按它所对应的按键区被激活并显示出来,也可以在字符拖动操作过程中,当另一个字符被拖动至当前按键区时,停留一定时间,则当前按键区的扩展按键区被激活并显示出来。
图2所示的虚拟键盘还包括主丝印105和副丝印205。虚拟按键和扩展按键均对应特定的字符,对按键的操作指令均是针对该字符的,该字符会在按键区以图片或点阵的形式显示出来。对应于虚拟按键上的字符为主丝印105,即字母O、U等,对应于扩展虚拟按键上的字符为副丝印,即数字9和字母主丝印通常被显示在虚拟按键上,且字符尺寸较大,在本发明的描述中称之为主要地显示,副丝印通常不被显示在虚拟按键上,或者以较小的尺寸显示在虚拟按键上,如图2中虚拟键盘上所显示的数字1、2、3…,在本发明的描述中称之为次要地显示。在本发明的相关描述中,术语“主丝印”与“主丝印字符”通常表示相同的含义,“副丝印”与“副丝印字符”亦如此。
本发明的方案还提供了按键备选区300。一些在虚拟键盘上可能被用到但没有放到虚拟按键和扩展虚拟按键的字符以按键的形式集中放到键盘以外的区域,即按键备选区300。利用按键备选区300中的备选按键301或备选字符305,对虚拟键盘100以及扩展虚拟按键202进行设置,按键备选区300还可以包括多个空白按键,用来存储从键盘区或扩展按键区删除出来的字符,后文将进一步详述。
图3是按键区坐标示意图。在一个实施例中,触摸屏具有800X600像素,以像素为依据,触摸屏上的任意一点都可以用坐标(x,y)表示,x的取值为0-800,y的取值为0-600。按键区101的四个顶点分别可以用坐标(x1,y1),(x2,y2),(x3,y3),(x4,y4)来表示,按键区101的中心点A0的坐标为(x0,y0)。
通常地,当手指按压虚拟按键102,接触/移动模块19判断手指与触摸屏是否接触,并确定接触的姿态,确定接触姿态的通常依据是接触的时间长短,轻敲的接触时间较短,例如可以设定为不长于30ms,接触时间长于30ms则被视为长按。当接触/移动模块19检测到长按按键区101的操作,激活拖动模式,手指与触摸屏保持接触状态并持续的移动,其效果是拖动按键区101移动,当手指离开触摸屏,接触/移动模块19检测离开的位置,确定拖动的结束点位置,这种情形下,拖动操作的起始点位置相当于是按键区101的中心点A0。检测到按键区101的中心点A0(x1,y1)移动到A’0(x’1,y’0),按键区101的四个顶点相应的由坐标(x’1,y’1),(x’2,y’2),(x’3,y’3),(x’4,y’4)来表示。由于整个触摸屏上的每个位置都可以由坐标来表示,按键区101和键间区103、104都可以通过坐标数值来限定,通过适当的数值设置,由此可以确定按键区101被拖动后,其中心点(即拖动操作的起始点)是否进入另一个按键区,或者是否落入行间隔区103或者键间隔区104。如果拖动的起始点不是在某个按键区之内(例如从键盘区以外的空白处向键盘区拖动,这种拖动方式也可以被赋予特定的含义,用于对虚拟键盘进行设置),由于手指与触摸屏的接触点具有一定的面积,也可以根据一定的算法确定一个中心点,作为拖动操作的起始点,并作为确定结束点位置的依据。这些是本领域技术人员所能理解的,在此不加赘述。
取决于触摸屏的大小,屏上各个位置的坐标表述可以有其它的方式,坐标轴的设置也可以有其它的方式。激活拖动模式的方式也不限于长按,例如手指的双击姿态、或者手指沿特定的方向(包括方向的变化)的滑动也可以激活它。如上所述,扩展按键也可以通过长按而被激活并显示出来,为了避免扩展按键的激活与拖动模式的激活发生冲突,可以设置不同的长按时间来分别激活两种模式,例如,相对短的长按用来激活扩展按键,相对长的长按用来激活拖动模式,或者相反。也可以采用不同的手指姿态来激活二者。这些是本领域技术人员能够理解的。
[实施例1]
下面结合图4和图5A-5D来说明对键盘区进行设置的一个实施例。
在步骤141,电子装置检测用户在触摸屏上的拖动操作,拖动的对象是虚拟按键102(对应虚拟按键区101)。
在步骤142,确定拖动操作的起始点位置和结束点位置,在确定的过程中,以虚拟按键区101的中心点坐标来确定相应的位置。
在步骤143,当拖动操作的起始点对应于第一虚拟按键,结束点对应于第二虚拟按键,将第一虚拟按键与第二虚拟按键互换位置。
如图5A所示,以按键A和V为例,拖动按键A对应的按键区,确定按键区的中心点进入了按键V的按键区,按键A和按键V互换位置。
在步骤144,当拖动操作的起始点对应于第三虚拟按键,结束点对应于行间隔区,在行间隔区相应的位置增加一行空白的按键,并将第三虚拟按键移动到结束点在新增加的行中的对应位置。
如图5B所示,按键区的中心点被拖动至键盘区第三行按键下方的行间隔区,在第三行按键下方插入一个整行空白按键,并将按键移至该空白行中结束点所对应的位置。
在步骤145,结束点位置对应于键间隔区,在该键间隔区对应的位置增加一个虚拟按键的位置,并将第四虚拟按键移动到该位置。
如图5C所示,当退格键所对应的按键区的中心点被拖动至第二行按键右端的键间隔区,在第二行按键的右端增加一个按键位置,将退格键移动至该位置。
如上所述,当触摸屏上的每个点和每个区域都是由坐标表示,可以将键间区排它地划分成行间隔区和键间隔区,避免某个点既被作为行间隔区,又被作为键间隔区;如果在特殊的按键布局情况下,出现行间隔区与键间隔区的重叠,可以在二者之间设置优先级,如,优先地作为行间隔区,即,如果一个位置即处于行间隔区也处于键间隔区,则被优先视为它处于行间隔区。
在步骤146,当拖动操作的起始点对应于第五虚拟按键,结束点对应于键盘区以外的位置,删除第五虚拟按键。
如图5D所示,拖动按键℃,拖动操作的结束点位于键盘区100之外的位置,该按键被删除。
在步骤147,当拖动操作的起始点对应于键盘区以外的位置,结束点对应于行间隔区,在行间隔区相应的位置增加一行空白的按键。
如图5E所示,从键盘区100之外的起始点,向键盘区100的第三行按键下方的行间隔区拖动,在按键区100的第三行下方增加一行空白按键,成为第四行按键。
在步骤148,当拖动操作的起始点对应于键盘区以外的位置,结束点对应于键间隔区,在该键间隔区对应的位置增加一个空白虚拟按键。
如图5F所示,从键盘区100之外的起始点,向键盘区100的第三行按键退格键的左侧键间隔区拖动,在该位置增加一个空白按键。
在步骤149,对虚拟按键进行重新排列,包括调整虚拟按键的位置分布和按键区的大小。
如图5B-5F所示,当发生虚拟按键的增加、删除、或者单向的移动,对虚拟按键进行位置和按键区大小的调整,重新排列,使虚拟按键的分布均匀,保持美观并便于操作。这里所说的均匀并不意味着所有的按键同一大小,如通常的电脑键盘,按键的大小有异,但仍可实现均匀的排列。
在该实施例中,当虚拟按键发生移动或者删除,与按键相对应的主丝印字符和副丝印字符作为整体,一起同步进行移动或者删除。
上述的步骤是在键盘区进行,作为一个可选的方式,类似的步骤也可以在备选按键区300内进行。
作为本发明的一个实施例,图4所述的步骤可以由软件和硬件共同实现。本发明提供具有触摸屏显示器的电子装置,包括存储器、处理器、控制器、触摸屏显示器、接触/移动模块,包括一个或多个程序,这些程序存储在存储器,并被配置为由处理器执行,接触/移动模块用于检测在触摸屏上的接触和移动的操作,并为程序的执行提供检测数据;所述程序包括:用于提供虚拟键盘的键盘区和虚拟按键的指令,每个虚拟按键对应显示屏上的虚拟按键区,虚拟按键区之间具有键间区,键间区包括行间隔区和键间隔区,每个虚拟按键与特定字符相关联;用于检测在触摸屏上的拖动操作的指令;用于响应于检测到的拖动操作,根据拖动操作的起始点位置和结束点位置,改变相应的虚拟按键的设置的指令;用于当拖动操作的起始点对应于第一虚拟按键,结束点对应于第二虚拟按键,将第一虚拟按键与第二虚拟按键互换位置的指令;用于当拖动操作的起始点对应于第三虚拟按键,结束点对应于行间隔区,在行间隔区相应的位置增加一行空白的按键,并将第三虚拟按键移动到新增加的行中结束点对应的位置的指令;用于当拖动操作的起始点对应于第四虚拟按键,结束点对应于键间隔区,在该键间隔区对应的位置增加一个虚拟按键的位置,并将第四虚拟按键移动到该位置的指令;用于当拖动操作的起始点对应于第五虚拟按键,结束点对应于键盘区以外的位置,删除第五虚拟按键的指令;用于当拖动操作的起始点对应于键盘区以外的位置,结束点对应于行间隔区,在行间隔区对应的位置增加一行空白的按键的指令;用于当拖动操作的起始点对应于键盘区以外的位置,结束点对应于键间隔区,在该键间隔区相应的位置增加一个空白虚拟按键的指令。
本实施例的方法还可以由执行于具有触摸屏显示器的电子设备之中的计算机程序来实现,当该程序执行时,使得电子设备执行上述的方法。
[实施例2]
实施例2与上述的实施例1相同的内容不再重复描述,实施例2与实施例1的不同之处在于,实施例2中的虚拟键盘的设置是在键盘区、按键备选区、和扩展按键区三者之中的两者之间进行,或者是在扩展按键区之内进行;另一个区别是,实施例2中按键的移动或删除是在字符的层次上发生的,不似实施例1把主丝印字符和副丝印字符作为一个按键的整体一起同步进行移动或删除。
下面结合图6和图7A-7H,说明本发明的实施例2。
首先,当虚拟键盘的设置需要备选按键或副丝印字符的参与,需要调出按键备选区,例如,可以通过菜单功能调出按键备选区300。类似地,可以通过长按的手指姿态激活扩展按键202。
如图6所示,在步骤261,检测触摸屏上的拖动操作;在步骤262,确定拖动操作的起始点位置和结束点位置。
在步骤263,当拖动操作的起始点对应于一个备选按键,结束点位于键盘区的键间隔区时,在所述键间隔区增加一个空白按键,并将所述备选按键对应的备选字符移动到该空白按键上。
类似地,当拖动操作的起始点对应于一个备选按键,结束点对应于键盘区的行间隔区,在所述行间隔区对应的位置增加一行空白的按键,并将所述备选按键对应的备选字符移动该新增加的虚拟按键上。
如图7A所示,将按键备选区300中的℃键拖动到键盘区100的退格键左侧的键间区,在该键间区的相应位置生成新的空白按键,并将字符℃移动到相应位置的新生成的按键上。
虽然图7A示出的是结束点位于键间隔区的情形,但是,类似于实施例1,该键间区包括键间隔区和行间隔区两种情形,当结束点位于行间隔区,在行间隔区的相应位置增加一行空白的按键,并将字符℃移动到新增加的行中结束点所对应的位置。这类似于图5B中所示的对键的处理,只是起始点不同。
在步骤264,当拖动操作的起始点对应于一个备选按键,结束点位于键盘区的一个按键区时,将相应的备选字符移动到所述按键区,作为主丝印字符。
如图7B所示,将按键备选区300的¥键拖到键盘区100的虚拟按键区O,由于该键已经有主丝印0,字符¥被加入该键的主丝印,原来的主丝印0成为副丝印。这时,虚拟按键O有三个副丝印字符。根据本方明的方案,为副丝印字符设置优先级,根据优先级的高低排列它们的顺序,在该实施例中,排列在左边的数字9的优先级高于字符优先级最高的副丝印字可以称为第一副丝印,或第一副丝印字符,其它的可以顺次称为第二副丝印、第三副丝印,等等。当扩展按键区202未激活,数字9被次要地显示在按键O上,这时,通过特殊的手指姿态,在不激活扩展按键的情况下,也可以输入数字9。例如,通常单次的轻敲该键是输入字母O,可以设定,在该虚拟按键区内划√,即向右下再拐向右上的折线,即输入优先级最高的副丝印字符9,这种手指姿态的设定是可预先设成不同的形式,甚至上述的√形姿态可以允许动作的起点或终点超出按键区的范围,只要在按键区范围内形成了一个折线的路径即可。
在本实施例中,当原来的主丝印0成为副丝印,它被赋予最高的优先级,排列在扩展按键区的最左侧。数字9和字符的优先级被顺次修改。
在步骤265,当拖动操作的起始点对应于一个备选按键,结束点位于扩展按键区时,将所述备选按键对应的备选字符添加到扩展按键区。
如图7C所示,将按键备选区300的¥键拖到键盘区100的扩展按键区202,在结束点相应的位置,即9和的中间位置,生成一个相应的扩展按键,并将字符¥设置到该按键上,并被赋予比9低,比高的优先级,的优先级相应修改。
在步骤266,当起始点对应于键盘区的一个虚拟按键,结束点位于按键备选区时,从所述虚拟按键上删除相应的主丝印字符。
类似地,当结束点对应于键盘区、按键备选区以及扩展按键区以外的任何位置时,从所述虚拟按键上删除相应的主丝印字符
如图7D所示,将键盘区100的虚拟按键℃拖向按键备选区300,将字符℃从按键的主丝印位置删除。此时,该虚拟按键102既没有主丝印字符,也没有副丝印字符,将该按键从键盘区100删除,并相应地对其它的按键进行重新排列。
作为一种可选的方式,将主丝印字符从虚拟按键拖动至键盘区、按键备选区以及扩展按键区以外的任何位置,也可以将主丝印字符删除。被删除的主丝印字符自动地进入按键备选区存储,以备后续设置虚拟键盘之用。
作为另一种可选的方式,当主丝印被删除,如果该键有副丝印字符,也可以不将该键删除,而是自动地将第一副丝印字符修改成为主丝印。
在步骤267,当拖动操作的起始点对应于键盘区的一个虚拟按键,结束点位于扩展按键区时,将所述虚拟按键的主丝印字符移动到扩展按键区内与结束点位置相应的位置。
如图7E所示,在激活按键O的扩展按键202以后,将键盘区100的按键O拖向扩展按键区202,从而将字母O由主丝印改变为副丝印,拖动结束点位置是副丝印数字9的左侧,因而字母O成为优先级最高的副丝字符,另两个副丝印字符的优先级设置根据位置的变化被相应地调整。
作为一种可选的方式,不管字母O被拖动到扩展按键区的什么位置,可以自动地将原来的第一副丝印字符修改成为主丝印。
在步骤268,当拖动操作的起始点对应扩展按键区的一个副丝印字符,结束点位于按键备选区时,将所述副丝印字符从扩展按键区删除。
作为一种可选的方式,将副丝印字符从虚拟按键拖动至键盘区、按键备选区以及扩展按键区以外的任何位置,也可以将主丝印字符删除。被删除的副丝印字符自动地进入按键备选区存储,以备后续设置虚拟键盘之用。
如图7F所示,将副丝印字符¥从扩展按键区202拖动至按键备选区300,从而将字符¥从扩展按键区202移除,存入扩展按键区300。余下的副丝印字符9和的优先级做出相应的修改。
在步骤269,当拖动操作的起始点对应于扩展按键区的一个副丝印字符,结束点位于键盘区的一个虚拟按键区时,将所述副丝印字符移动到所述虚拟按键区,作为主丝印字符;如果该虚拟按键区原来有主丝印字符,将该原来的主丝印字符移动到扩展按键区的最左侧,作为优先级最高的副丝印字符,将所述副丝印字符移动到所述虚拟按键区,作为主丝印字符。
如图7G所示,将字符从扩展按键区202拖向键盘区100的一个虚拟按键,由于此键没有主丝印字符,成为它的主丝印。如果该键已经有了主丝印,则仍成为该键的主丝印字符,该键原来的主丝印字符成为优先级最高的副丝印,对其它的副丝印相应地调整其排列顺序和优先级设置。
虽图7G所示的拖动是从同一个虚拟按键的扩展按键区拖动到虚拟按键区,事实上,这种拖动可以从一个虚拟按键的扩展按键区拖动到另一个虚拟按键区。
在步骤2610,当拖动操作的起始点对应扩展按键区的一个副丝印字符,结束点位于扩展按键区的键间隔区时,将所述副丝印字符移动到结束点相应的位置,并根据副丝印字符的排列顺序,相应地调整副丝印字符的优先级。
如图7H所示,在扩展按键区202内,拖动副丝印9至字母O之前,从而使其成为优先级最高的副丝印,相应地,字母O和的优先级设置根据它的位置被相应地修改。
作为一种可选的方式,对于一个虚拟按键的主丝印字符与副丝印字符之间可以通过特殊的拖动方式进行快速的调整,例如,当扩展按键区处于显示状态并位于主丝印的上方的位置,将主丝印字符向下拖动,移动虚拟按键区,保持拖动状态,然后改变方向再向上方移动入扩展按键区,由此实现将主丝印字符变为副丝字符,同时将原第一副丝印,即优先级最高的副丝印字符,变为主丝印。
类似地,拖动的起始点是一个副丝印字符,将其拖出扩展按键区,保持拖动状态,然后改变方向使拖动结束点位于主丝印字符,由此将该副丝印字符变为主丝印字符,同时将原主丝印字符变为第一副丝印字符。
在图6的步骤2611,对虚拟按键进行重新排列,包括调整虚拟按键的位置分布和按键区的大小,与实施例1类似,不再赘述。
同样类似于实施例1,实施例2的方案的方法可以由软件和硬件共同实现。本实施例提供具有触摸屏显示器的电子装置,包括存储器、处理器、控制器、触摸屏显示器、接触/移动模块,包括一个或多个程序,这些程序存储在存储器,并被配置为由处理器执行,接触/移动模块用于检测在触摸屏上的接触和移动的操作,并为程序的执行提供检测数据;所述程序包括实施图6所示的方法的步骤的指令。本实施例的方法还可以由执行于具有触摸屏显示器的电子设备之中的计算机程序来实现,当该程序执行时,使得电子设备执行上述的方法。
[实施例3]
图4和图5A-5F所给出的示例可以不将主丝印和副丝印作为一个按键整体进行拖动,而是类似于实施2那样在字符的层次上进行操作。这可以通过设置一个开关,设定操作是在键操作模式(即将包括副丝印在内在的键作为一个整体进行操作)还是字符操作模式(即将主丝印与副丝印均作为单独的字符分别进行操作)之下进行。也可用一个判定的步骤来在两种模式之间进行选择,例如,当扩展按键区处于显示模式时,用字符操作模式,当扩展按键区处于隐藏模式时,用键操作模式。
在字符操作模式下,本发明的方案还可以实现以下的步骤来对虚拟键盘进行设置。当拖动起始点对应于键盘区的按键区,结束点对应于键盘区的键间隔区,在结束点对应的位置增加新的虚拟按键,将所述按键区的主丝印字符设置为新增加键的主丝印,起始点对应的按键的第一副丝印变为该键的主丝印。
当拖动起始点对应于按键区的主丝印,结束点对应于键盘区的行间隔区,在结束点对应的位置增加一行空白的按键,将所述按键区的主丝印字符设置为结束点在新增加的行中对应位置的虚拟按键的主丝印,起始点对应的按键的第一副丝印变为该键的主丝印。
当拖动起始点对应于一个副丝印,结束点对应于键盘区的键间隔区,在结束点对应的位置增加新的虚拟按键,将所述副丝印字符设置为新增加键的主丝印,起始对应的扩展按键区的其它副丝印的优先级设置相应调整。
当拖动起始点对应于一个副丝印,结束点对应于键盘区的行间隔区,在结束点对应的位置增加一行空白的按键,将所述副丝印字符设置为结束点在新增加的行中对应位置的虚拟按键的主丝印。
当拖动起始点对应于键盘区的按键区,结束点对应于另一虚拟按键的扩展按键区,将所述按键区的主丝印字符设置为所述另一虚拟按键的副丝印,起始点对应的按键的第一副丝印变为该键的主丝印。
当拖动起始点对应于一个副丝印,结束点对应于另一虚拟按键的扩展按键区,将所述副丝印字符设置为所述另一虚拟按键的副丝印。
当拖动起始点对应于的第六按键区,结束点对应于第七按键区,将第六按键区的主丝印移动到第七按键区成为主丝印,同时将第七按键区的原主丝印修改成为其第一副丝印,第六按键的第一副丝印修改成为其新的主丝印。
以上通过示例的方式描述了本发明的技术方案,本发明的方案并不限于上述的例示,本领域技术人员可以在不背离本发明的总体思想的前提下,对上述的方案做出很多的修改和变化。