粘贴方法和装置转让专利

申请号 : CN201410210331.8

文献号 : CN104049841B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王伟山胡月鹏傅盛

申请人 : 可牛网络技术(北京)有限公司

摘要 :

本发明提出一种粘贴方法和装置。该粘贴方法包括:确定处于粘贴状态;在处于粘贴状态后,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出所述区域能够承载的内容进行粘贴。该方法能够可以对已经复制的内容进行不同长度的自由粘贴。

权利要求 :

1.一种粘贴方法,其特征在于,包括:

确定处于粘贴状态;

在处于粘贴状态后,实时获取用户横向和/或纵向选择的区域,并计算所述区域的大小以确定所述区域可承载的内容,并从预先保存的要粘贴的内容中,取出所述区域能够承载的内容进行粘贴。

2.根据权利要求1所述的方法,其特征在于,所述确定处于粘贴状态,包括:获取内存变量的长度,当所述长度不为零时,确定处于粘贴状态,其中,所述内存变量是预设的用于表征存储空间的变量,所述存储空间用于保存要粘贴的内容。

3.根据权利要求1所述的方法,其特征在于,所述从预先保存的要粘贴的内容中,取出所述区域能够承载的内容进行粘贴,包括:在横向选择的区域每达到一个字符所占用的区域时,从预先保存的要粘贴的内容中,取出一个字符进行粘贴。

4.根据权利要求1或3所述的方法,其特征在于,实时获取用户横向选择的区域,包括:实时获取鼠标在横向上的移动距离;或者,

实时获取横向上的触摸滑动距离。

5.根据权利要求1所述的方法,其特征在于,所述从预先保存的要粘贴的内容中,取出所述区域能够承载的内容进行粘贴,包括:在纵向选择的区域每达到一行字符串所占用的区域时,从预先保存的要粘贴的内容中,取出一行字符串进行粘贴。

6.根据权利要求1或5所述的方法,其特征在于,实时获取用户纵向选择的区域,包括:在用户每滚动一次鼠标的滚动轮后,将用户纵向选择的区域增加一行。

7.根据权利要求1所述的方法,其特征在于,所述确定处于粘贴状态之前,所述方法包括:获取所述要粘贴的内容;

将所述要粘贴的内容保存在存储空间中。

8.根据权利要求7所述的方法,其特征在于,所述存储空间包括至少两个存储器,不同的存储器分别用于保存不同时间产生的要粘贴的内容,所述从预先保存的要粘贴的内容中,取出所述区域能够承载的内容进行粘贴,包括:从第一存储器中取出第一内容进行粘贴,所述第一存储器是所述至少两个存储器中的一个存储器,所述第一内容是所述第一存储器中保存的所述区域能够承载的内容;

获取切换指令,并根据所述切换指令,将所述第一内容替换为第二内容,所述第二内容是第二存储器中保存的所述区域能够承载的内容,所述第二存储器是所述至少两个存储器中与所述第一存储器不同的一个存储器。

9.根据权利要求7或8所述的方法,其特征在于,还包括:接收清空指令,所述清空指令是在用户不需要所述要粘贴的内容后生成的;

根据所述清空指令,清空所述存储空间。

10.根据权利要求9所述的方法,其特征在于,所述要粘贴的内容是用户进行复制或剪切操作时选择的内容,所述清空指令是再次进行的复制或剪切操作。

11.一种粘贴装置,其特征在于,包括:

确定模块,用于确定处于粘贴状态;

粘贴模块,用于在处于粘贴状态后,实时获取用户选择的区域,并计算所述区域的大小以确定所述区域可承载的内容,并从预先保存的要粘贴的内容中,取出所述区域能够承载的内容进行粘贴,所述粘贴模块包括:横向获取子模块和/或纵向获取子模块;所述横向获取子模块用于实时获取用户横向选择的区域;所述纵向获取子模块用于实时获取用户纵向选择的区域。

12.根据权利要求11所述的装置,其特征在于,所述确定模块具体用于获取内存变量的长度,当所述长度不为零时,确定处于粘贴状态,其中,所述内存变量是预设的用于表征存储空间的变量,所述存储空间用于保存要粘贴的内容。

13.根据权利要求11所述的装置,其特征在于,所述粘贴模块,包括:粘贴子模块,用于在所述横向选择的区域每达到一个字符所占用的区域时,从预先保存的要粘贴的内容中,取出一个字符进行粘贴。

14.根据权利要求11或13所述的装置,其特征在于,所述横向获取子模块具体用于实时获取鼠标在横向上的移动距离;或者,实时获取横向上的触摸滑动距离。

15.根据权利要求11所述的装置,其特征在于,所述粘贴模块,包括:粘贴子模块,用于在所述纵向选择的区域每达到一行字符串所占用的区域时,从预先保存的要粘贴的内容中,取出一行字符串进行粘贴。

16.根据权利要求11或15所述的装置,其特征在于,所述纵向获取子模块还用于在用户每滚动一次鼠标的滚动轮后,将用户纵向选择的区域增加一行。

17.根据权利要求11所述的装置,其特征在于,还包括:获取模块,用于获取所述要粘贴的内容;

保存模块,用于将所述要粘贴的内容保存在存储空间中。

18.根据权利要求17所述的装置,其特征在于,所述存储空间包括至少两个存储器,不同的存储器分别用于保存不同时间产生的要粘贴的内容,所述粘贴模块,还包括:选取子模块,用于从第一存储器中取出第一内容进行粘贴,所述第一存储器是所述至少两个存储器中的一个存储器,所述第一内容是所述第一存储器中保存的所述区域能够承载的内容;

切换子模块,用于获取切换指令,并根据所述切换指令,将所述第一内容替换为第二内容,所述第二内容是第二存储器中保存的所述区域能够承载的内容,所述第二存储器是所述至少两个存储器中与所述第一存储器不同的一个存储器。

19.根据权利要求17或18所述的装置,其特征在于,还包括:清空模块,用于接收清空指令,并根据所述清空指令,清空所述存储空间,其中,所述清空指令是在用户不需要所述要粘贴的内容后生成的。

20.根据权利要求19所述的装置,其特征在于,所述要粘贴的内容是用户进行复制或剪切操作时选择的内容,所述清空指令是再次进行的复制或剪切操作。

说明书 :

粘贴方法和装置

技术领域

[0001] 本发明涉及信息处理领域,尤其涉及一种粘贴方法和装置。

背景技术

[0002] 在使用电子设备时,复制或剪切(简写为复制/剪切)、粘贴是最常用的文字编辑功能。现有的文字粘贴方案,主要是通过鼠标点击菜单选项、键盘组合键或长按触摸屏等方
法,将预先复制/剪切的内容完整地粘贴到目标位置。但有时并不需要将已复制的内容全部
粘贴,因此还要在粘贴后进行手动删除,操作不便。

发明内容

[0003] 本发明旨在至少在一定程度上解决相关技术中的技术问题之一。
[0004] 为此,本发明的一个目的在于提出一种粘贴方法,该方法可以对已经复制的内容进行不同长度的粘贴。
[0005] 本发明的第二个目的在于提出一种粘贴装置。
[0006] 本发明的第三个目的在于提出一种客户端设备。
[0007] 为达到上述目的,本发明第一方面实施例提出的粘贴方法,包括:确定处于粘贴状态;在处于粘贴状态后,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出
所述区域能够承载的内容进行粘贴。
[0008] 本发明第一方面实施例提出的粘贴方法,通过在处于粘贴状态时,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴,即根据
用户所选区域的大小确定粘贴内容的多少,使用户能够通过控制所选区域的大小来自由地
控制粘贴字数,一次性完成粘贴,无需手动删除多余字节,方便快捷,提升了用户体验。
[0009] 为达到上述目的,本发明第二方面实施例提出的粘贴装置,包括:确定模块,用于确定处于粘贴状态;粘贴模块,用于在处于粘贴状态后,实时获取用户选择的区域,并从预
先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴。
[0010] 本发明第二方面实施例提出的粘贴装置,通过在处于粘贴状态时,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴,即根据
用户所选区域的大小确定粘贴内容的多少,使用户能够通过控制所选区域的大小来自由地
控制粘贴字数,一次性完成粘贴,无需手动删除多余字节,方便快捷,提升了用户体验。
[0011] 为达到上述目的,本发明第三方面实施例提出的客户端设备,包括壳体、处理器、存储器、电路板和电源电路,其中,所述电路板安置在所述壳体围成的空间内部,所述处理
器和所述存储器设置在所述电路板上;所述电源电路,用于为所述移动终端的各个电路或
器件供电;所述存储器用于存储可执行程序代码;所述处理器通过读取所述存储器中存储
的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于:确定处于粘贴状态;
在处于粘贴状态后,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出所述
区域能够承载的内容进行粘贴。
[0012] 本发明第三方面实施例提出的客户端设备,通过在处于粘贴状态时,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴,即根
据用户所选区域的大小确定粘贴内容的多少,使用户能够通过控制所选区域的大小来自由
地控制粘贴字数,一次性完成粘贴,无需手动删除多余字节,方便快捷,提升了用户体验。
[0013] 本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

[0014] 本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
[0015] 图1是本发明一个实施例的粘贴方法的流程图;
[0016] 图2是根据本发明又一个实施例的粘贴方法的流程图;
[0017] 图3是根据本发明另一个实施例的粘贴方法的流程图;
[0018] 图4是根据本发明再一个实施例的粘贴方法的流程图;
[0019] 图5是根据本发明一个实施例的粘贴装置的结构框图;
[0020] 图6是为根据本发明另一个实施例的粘贴装置的结构框图;
[0021] 图7是为根据本发明另一个实施例的粘贴装置的结构框图;
[0022] 图8是为根据本发明另一个实施例的粘贴装置的结构框图。

具体实施方式

[0023] 下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附
图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。相反,本
发明的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同
物。
[0024] 下面参考附图描述根据本发明实施例的粘贴方法和装置。
[0025] 图1是本发明一个实施例的粘贴方法的流程图。
[0026] 如图1所示,该方法包括:
[0027] S101:确定处于粘贴状态。
[0028] 具体地,可以根据对应的存储空间中是否有待粘贴的内容、是否触发预设的粘贴动作等条件来确认当前是否处于粘贴状态。例如,检测存储空间中是否存储有可粘贴的内
容,若有,则可确定处于粘贴状态。
[0029] S102:在处于粘贴状态后,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴。
[0030] 其中,预先保存的要粘贴的内容可以是用户预先进行复制或剪切的内容。
[0031] 具体地,在本发明的一个实施例中,当确认处于粘贴状态时,可实时获取用户选择的区域,并计算该区域的大小以确定该区域可承载的内容,可按用户选择的区域占用的像
素点数确定能够承载的内容,内容可按字节数或按字数等计量,然后从预先保存的要粘贴
的内容中,取出与区域能够承载的内容等量的内容进行粘贴,使用户可以通过控制所选区
域的大小来控制所要粘贴的内容的多少,从而实现可以控制粘贴字数的自由粘贴。
[0032] 进一步地,当用户将要粘贴的内容存储到存储器后,还可以清空存储空间,例如,用户通过复制得到要粘贴的内容并存入存储器后,如果发现复制错误,可以再次进行复制
操作,如点击复制菜单,以取消先前的复制,清空存储空间,以便为后续复制或剪切操作保
留空间。
[0033] 本发明实施例的粘贴方法,通过在处于粘贴状态时,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴,即根据用户所选区域
的大小确定粘贴内容的多少,使用户能够通过控制所选区域的大小来自由地控制粘贴字
数,一次性完成粘贴,无需手动删除多余字节,方便快捷,提升了用户体验。
[0034] 图2是根据本发明又一个实施例的粘贴方法的流程图。
[0035] 如图2所示,该粘贴方法包括:
[0036] S201:获取要粘贴的内容。
[0037] 其中,要粘贴的内容可以是文字、数字、符号、图片等任何可编辑的内容。
[0038] 具体地,可预先通过复制或剪切等方式获取要粘贴的内容,也可以通过未来可能的其他内容获取方式来获取要粘贴的内容,本发明在此不做限定。举例而言,可通过
ontouchlistener函数来监控用户是否产生复制或剪切操作,记为onkeydown事件,当产生
onkeydown事件时记录当时的起始点,起始点可以是起始位置和/或开始的字符,当产生
onkeyup事件时,即复制或剪切操作结束时,记录结束点,结束点可以是结束位置和/或结束
字符,即可获取到起始点到结束点之间的内容作为要粘贴的内容。
[0039] S202:将要粘贴的内容保存在存储空间中。
[0040] 其中,存储空间用于保存要粘贴的内容。
[0041] 例如,要粘贴的内容是“今天天气特别好呢”,之后,可以将该要粘贴的内容保存在存储空间中。
[0042] 存储空间可以用内存变量(memcache)表示。
[0043] S203:获取内存变量的长度,当长度不为零时,确定处于粘贴状态。
[0044] 其中,内存变量是预设的用于表征存储空间的变量。
[0045] 在本发明的具体实施例中,终端设备中的程序往往会定义一个内存变量memcache来表征存储空间中存储的要粘贴的内容,首先可检测内存变量的长度memcache.length是
否等于零,若内存变量的长度memcache.length不为0,表明存储空间中存储了要粘贴的内
容,则确定属于粘贴状态;若内存变量的长度memcache.length为0,表明存储空间中没有要
粘贴的内容,则确定为待复制/剪切状态,此时需要执行步骤S201-S202来获取并保存要粘
贴的内容。举例而言,例如选定的字符是“今天天气特别好呢”,此时这些字符会存入存储空
间中,因为内存变量的长度memcache.length已经大于0,所以此时可确定为粘贴状态。
[0046] S204:在处于粘贴状态后,实时获取用户横向选择的区域,并实时将用户横向选择的区域能够承载的内容进行粘贴。
[0047] 其中,用户横向选择的区域可以是用鼠标选择的,例如,鼠标向右侧移动得到横向选择的区域;或者,用户横向选择的区域也可以是在触摸屏上用手指横向滑动选择的。具体
地,可实时获取鼠标在横向上的移动距离;或者,实时获取横向上的触摸滑动距离。举例而
言,在通过鼠标进行操作的终端设备上,例如在电脑上,可实时获取鼠标在横向上的移动距
离;而在通过触控板或触摸屏等触摸式设备进行操作的终端设备上,例如在手机或平板电
脑上,可实时获取用户在触控板或触摸屏上的横向的触摸滑动距离。
[0048] 可以理解的是,为了使得用户能够横向选择区域,需要支持鼠标或手指的横向选择,以鼠标为例,可以设置插件,该插件可以在鼠标横向移动时,光标能够随着鼠标的移动
而移动,该移动可以在空白处进行也可以插入原有文本中并且不覆盖原有文本。具体实现
可以类似现有的点击空格键的处理,由于本发明实施例是针对粘贴的流程,具体鼠标横向
移动或手指横向滑动的支持实现不在本发明的覆盖范围内,在此不再赘述。
[0049] 进一步地,可以通过实时监控用户的行为以实时获取用户横向选择的区域。例如,在处于粘贴状态后,可再次通过ontouchlistener函数中onkeydown事件获取用户的起始
点,在产生起始点后,可以每移动一个字符就粘贴一个字符。例如,在产生起始点后,移动第
一个字符的区域后,将粘贴“今”字,再移动一个字符的区域后,再将“天”字粘贴。依此类推,
随着移动区域的扩大,粘贴更多的内容直至用户停止选择区域,例如产生onkeydown事件
后,停止粘贴。例如,通过用户选择区域可以只粘贴“今天天气特别好”而不再将最后的“呢”
进行粘贴。
[0050] 本发明实施例的粘贴方法,通过在处于粘贴状态时,实时获取用户横向选择的区域,并从预先保存的要粘贴的内容中,取出该区域能够承载的内容进行粘贴,能够随着选择
区域的变化实现逐字粘贴,简单直观,使用户能够自由地控制粘贴字数,一次性完成粘贴,
无需手动删除多余字节,方便快捷,提升了用户体验。
[0051] 图3是根据本发明另一个实施例的粘贴方法的流程图,上一实施例以逐字的粘贴为例,可以理解的是,在一些情况下,需要粘贴的内容比较多,如果逐字粘贴比较慢,此时,
参见本实施例,还可以进行逐行粘贴。
[0052] 如图3所示,本实施例的粘贴方法包括:
[0053] S301:获取要粘贴的内容。
[0054] 其中,要粘贴的内容可以是文字、数字、符号、图片等任何可编辑的内容。例如,要粘贴的内容包括两行内容,第一行内容是“好好学习天天向上”,第二行内容是“今天天气特
别好”。
[0055] S302:将要粘贴的内容保存在存储空间中。
[0056] S303:取内存变量的长度,当长度不为零时,确定处于粘贴状态。
[0057] S301-S303的具体内容详见上一实施例,在此不再赘述。
[0058] S304:在处于粘贴状态后,实时获取用户纵向选择的区域,并实时将用户纵向选择的区域能够承载的内容进行粘贴。
[0059] 上一实施例以鼠标的横向移动或者手指的横向滑动为例,得到用户横向选择的区域。
[0060] 本实施例以纵向选择区域为例,具体可以是向下滚动鼠标的滚轮,例如,每滚动一次滚轮表明向下选择一行内容,或者,手指向下滑动表明向下选择区域。
[0061] 具体如,执行粘贴时,通过滚动鼠标滚轮,当滚动长度达到可承载第一行内容时,将第一行内容进行粘贴,也就是将上述要粘贴的内容的第一行“好好学习天天向上”粘贴出
来。此时,当停止滚动后,将结束粘贴,也就是说“今天天气特别好”将不会被粘贴出来。
[0062] 更进一步地,用户在选择区域时,可将横向选择和纵向选择相结合来对所选区域大小进行控制。例如,可通过手指在屏幕上先纵向滑动一行再横向滑动两个字符,即可将第
一行“好好学习天天向上”以及第二行的前两个字“今天”粘贴出来,而“天气特别好”将不会
被粘贴出来。
[0063] 需要理解的是,用户选择区域时的操作包括但不仅限于以上实施例所述的鼠标操作以及触摸滑动操作,还可以包括键盘与鼠标的组合操作、鼠标按键与鼠标滚轮的组合操
作、长按屏幕后触摸滑动的组合操作等其他预设的区域选择操作。
[0064] 本发明实施例的粘贴方法,通过纵向选择区域,实现多行逐行粘贴,可以一次粘贴较多内容,节省粘贴时间;还可以结合横向的逐字粘贴同时操作,简单直观,使用户在粘贴
大量文字时依然能够自由控制粘贴字数,一次性完成粘贴,无需手动删除多余字节,方便快
捷,提升了用户体验。
[0065] 图4是根据本发明再一个实施例的粘贴方法的流程图,上述实施例以存储空间包括一个存储器为例,本实施例以存储空间包括多个存储器为例,每个存储器可以存储不同
时间产生的要粘贴的内容。
[0066] 如图4所示,本实施例的粘贴方法包括:
[0067] S401:获取要粘贴的内容,并将要粘贴的内容保存在存储空间。
[0068] 其中,要粘贴的内容可以是文字、数字、符号、图片等任何可编辑的内容。
[0069] 具体地,可通过上述实施例所列的步骤获取要粘贴的内容,并将要粘贴的内容保存在存储空间,在此不再赘述。
[0070] 在本发明的一个实施例中,存储空间可包括多个存储器,分别保存不同时刻产生的要粘贴的内容,例如,以两个存储器为例,第一存储器memcache[1]存储“你好世界”,第二
存储器memcache[2]存储“今天是星期二”。
[0071] S402:获取内存变量的长度,当长度不为零时,确定处于粘贴状态。
[0072] S403:在处于粘贴状态后,实时获取用户选择的区域,并实时根据用户选择的区域,从第一存储器中取出第一内容进行粘贴。
[0073] 其中,第一内容是第一存储器中保存的用户选择的区域能够承载的内容。
[0074] 第一存储器是预设的默认首次读取的存储器,例如,当确认进入粘贴状态后,默认首次读取内容的存储器是memcache[1],那么则从“你好世界”中取出用户选择的区域能够
承载的内容进行粘贴,例如,以横向选择为例,当鼠标横向移动两个字符后,可以将取出“你
好”进行粘贴。
[0075] S404:获取切换指令,并根据该切换指令,将第一内容替换为第二内容。
[0076] 其中,第二内容是第二存储器中保存的所选区域能够承载的内容,第二存储器是至少两个存储器中与第一存储器不同的一个存储器。
[0077] 例如,当用户将鼠标的滚动轮向上滚动时表明产生切换指令,此时,可以对粘贴的内容进行替换。例如,将“你好”替换为第二存储器memcache[2]中的“今天”。
[0078] 本发明实施例的粘贴方法,通过实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴,并能够在存储空间包括多个存储器时对
粘贴内容进行切换,无需多次手动切换粘贴内容,即可对不同存储器中的内容进行选择粘
贴,可灵活控制粘贴内容,一次性完成粘贴,无需手动删除多余字节,方便快捷,提升了用户
体验。本实施例通过采用多个存储器,可以存储不同的内容,避免后一内容对前一内容的覆
盖,实现不同内容的切换粘贴,方便用户操作。
[0079] 为了实现上述实施例,本发明还提出一种粘贴装置。
[0080] 图5是根据本发明一个实施例的粘贴装置的结构框图。如图5所示,该粘贴装置包括:确定模块100、粘贴模块200和清空模块300。
[0081] 具体地,确定模块100用于确定处于粘贴状态。更具体地,确定模块100可以根据对应的存储空间中是否有待粘贴的内容、是否触发预设的粘贴动作等条件来确认当前是否处
于粘贴状态。例如,检测存储空间中是否存储有可粘贴的内容,若有,则可确定处于粘贴状
态。
[0082] 粘贴模块200用于在处于粘贴状态后,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴。其中,预先保存的要粘贴的内容可以
是用户预先进行复制或剪切的内容。更具体地,在本发明的一个实施例中,当确认处于粘贴
状态时,粘贴模块200可实时获取用户选择的区域,并计算该区域的大小以确定该区域可承
载的内容,可按用户选择的区域占用的像素点数确定能够承载的内容,内容可按字节数或
按字数等计量,然后从预先保存的要粘贴的内容中,取出与区域能够承载的内容等量的内
容进行粘贴,使用户可以通过控制所选区域的大小来控制所要粘贴的内容的多少,从而实
现可以控制粘贴字数的自由粘贴。
[0083] 清空模块300用于接收清空指令,并根据清空指令,清空存储空间,其中,清空指令是在用户不需要要粘贴的内容后生成的。进一步地,当用户将要粘贴的内容存储到存储器
后,还可以清空存储空间。例如,用户通过复制得到要粘贴的内容并存入存储器后,如果发
现复制错误,可以再次进行复制操作,如点击复制菜单,以取消先前的复制,清空存储空间,
以便为后续复制或剪切操作保留空间。
[0084] 本发明实施例的粘贴装置,通过在处于粘贴状态时,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴,即根据用户所选区域
的大小确定粘贴内容的多少,使用户能够通过控制所选区域的大小来自由地控制粘贴字
数,一次性完成粘贴,无需手动删除多余字节,方便快捷,提升了用户体验。
[0085] 图6是为根据本发明另一个实施例的粘贴装置的结构框图。如图6所示,该粘贴装置包括:确定模块100、粘贴模块200、清空模块300、获取模块400、保存模块500、横向获取子
模块210和粘贴子模块220。其中,粘贴模块200包括横向获取子模块210和粘贴子模块220。
[0086] 具体地,获取模块400用于获取要粘贴的内容。其中,要粘贴的内容可以是文字、数字、符号、图片等任何可编辑的内容。更具体地,获取模块400可预先通过复制或剪切等方式
获取要粘贴的内容,也可以通过未来可能的其他内容获取方式来获取要粘贴的内容,本发
明在此不做限定。举例而言,获取模块400可通过ontouchlistener函数来监控用户是否产
生复制或剪切操作,记为onkeydown事件,当产生onkeydown事件时记录当时的起始点,起始
点可以是起始位置和/或开始的字符,当产生onkeyup事件时,即复制或剪切操作结束时,记
录结束点,结束点可以是结束位置和/或结束字符,即可获取到起始点到结束点之间的内容
作为要粘贴的内容。
[0087] 保存模块500用于将要粘贴的内容保存在存储空间中。其中,存储空间用于保存要粘贴的内容。例如,要粘贴的内容是“今天天气特别好呢”,之后,可以将该要粘贴的内容保
存在存储空间中。存储空间可以用内存变量(memcache)表示。
[0088] 确定模块100具体用于获取内存变量的长度,当长度不为零时,确定处于粘贴状态,其中,内存变量是预设的用于表征存储空间的变量。在本发明的具体实施例中,终端设
备中的程序往往会定义一个内存变量memcache来表征存储空间中存储的要粘贴的内容,首
先可检测内存变量的长度memcache.length是否等于零,若内存变量的长度
memcache.length不为0,表明存储空间中存储了要粘贴的内容,则确定属于粘贴状态;若内
存变量的长度memcache.length为0,表明存储空间中没有要粘贴的内容,则确定为待复制/
剪切状态。举例而言,例如选定的字符是“今天天气特别好呢”,此时这些字符会存入存储空
间中,因为内存变量的长度memcache.length已经大于0,所以此时可确定为粘贴状态。
[0089] 横向获取子模块210用于实时获取用户横向选择的区域。其中,用户横向选择的区域可以是用鼠标选择的,例如,鼠标向右侧移动得到横向选择的区域;或者,用户横向选择
的区域也可以是在触摸屏上用手指横向滑动选择的。更具体地,横向获取子模块210可实时
获取鼠标在横向上的移动距离;或者,实时获取横向上的触摸滑动距离。举例而言,在通过
鼠标进行操作的终端设备上,例如在电脑上,可实时获取鼠标在横向上的移动距离;而在通
过触控板或触摸屏等触摸式设备进行操作的终端设备上,例如在手机或平板电脑上,可实
时获取用户在触控板或触摸屏上的横向的触摸滑动距离。
[0090] 可以理解的是,为了使得用户能够横向选择区域,需要支持鼠标或手指的横向选择,以鼠标为例,可以设置插件,该插件可以在鼠标横向移动时,光标能够随着鼠标的移动
而移动,该移动可以在空白处进行也可以插入原有文本中并且不覆盖原有文本。具体实现
可以类似现有的点击空格键的处理,由于本发明实施例是针对粘贴的流程,具体鼠标横向
移动或手指横向滑动的支持实现不在本发明的覆盖范围内,在此不再赘述。
[0091] 粘贴子模块220用于在横向选择的区域每达到一个字符所占用的区域时,从预先保存的要粘贴的内容中,取出一个字符进行粘贴。进一步地,可以通过实时监控用户的行为
以实时获取用户横向选择的区域。例如,在处于粘贴状态后,可再次通过ontouchlistener
函数中onkeydown事件获取用户的起始点,在产生起始点后,可以每移动一个字符就粘贴一
个字符。例如,在产生起始点后,移动第一个字符的区域后,将粘贴“今”字,再移动一个字符
的区域后,再将“天”字粘贴。依此类推,随着移动区域的扩大,粘贴更多的内容直至用户停
止选择区域,例如产生onkeydown事件后,停止粘贴。例如,通过用户选择区域可以只粘贴
“今天天气特别好”而不再将最后的“呢”进行粘贴。
[0092] 本发明实施例的粘贴装置,通过在处于粘贴状态时,实时获取用户横向选择的区域,并从预先保存的要粘贴的内容中,取出该区域能够承载的内容进行粘贴,能够随着选择
区域的变化实现逐字粘贴,简单直观,使用户能够自由地控制粘贴字数,一次性完成粘贴,
无需手动删除多余字节,方便快捷,提升了用户体验。
[0093] 图7是为根据本发明另一个实施例的粘贴装置的结构框图。如图7所示,在图6的基础上,该粘贴装置还包括:纵向获取子模块230。其中,粘贴模块200包括横向获取子模块
210、粘贴子模块220和纵向获取子模块230。
[0094] 具体地,纵向获取子模块230用于在处于粘贴状态后,实时获取用户纵向选择的区域。具体可以是向下滚动鼠标的滚轮,例如,每滚动一次滚轮表明向下选择一行内容,或者,
手指向下滑动表明向下选择区域。
[0095] 粘贴子模块220还用于在纵向选择的区域每达到一行字符串所占用的区域时,从预先保存的要粘贴的内容中,取出一行字符串进行粘贴。
[0096] 具体如,执行粘贴时,通过滚动鼠标滚轮,当滚动长度达到可承载第一行内容时,将第一行内容进行粘贴,也就是将上述要粘贴的内容的第一行“好好学习天天向上”粘贴出
来。此时,当停止滚动后,将结束粘贴,也就是说“今天天气特别好”将不会被粘贴出来。
[0097] 更进一步地,用户在选择区域时,可将横向选择和纵向选择相结合来对所选区域大小进行控制。例如,可通过手指在屏幕上先纵向滑动一行再横向滑动两个字符,即可将第
一行“好好学习天天向上”以及第二行的前两个字“今天”粘贴出来,而“天气特别好”将不会
被粘贴出来。
[0098] 需要理解的是,用户选择区域时的操作包括但不仅限于以上实施例所述的鼠标操作以及触摸滑动操作,还可以包括键盘与鼠标的组合操作、鼠标按键与鼠标滚轮的组合操
作、长按屏幕后触摸滑动的组合操作等其他预设的区域选择操作。
[0099] 本发明实施例的粘贴装置,通过纵向选择区域,实现多行逐行粘贴,可以一次粘贴较多内容,节省粘贴时间;还可以结合横向的逐字粘贴同时操作,简单直观,使用户在粘贴
大量文字时依然能够自由控制粘贴字数,一次性完成粘贴,无需手动删除多余字节,方便快
捷,提升了用户体验。
[0100] 图8是为根据本发明另一个实施例的粘贴装置的结构框图。如图8所示,在图7的基础上,该粘贴装置还包括:选取子模块240和切换子模块250。其中,粘贴模块200包括横向获
取子模块210、粘贴子模块220、纵向获取子模块230、选取子模块240和切换子模块250。
[0101] 在本发明的一个实施例中,存储空间可包括多个存储器,分别保存不同时刻产生的要粘贴的内容,例如,以两个存储器为例,第一存储器memcache[1]存储“你好世界”,第二
存储器memcache[2]存储“今天是星期二”。
[0102] 具体地,选取子模块240用于在处于粘贴状态后,实时根据用户选择的区域,从第一存储器中取出第一内容进行粘贴,第一存储器是至少两个的存储器中的一个存储器,第
一内容是第一存储器中保存的区域能够承载的内容。其中,第一存储器是预设的默认首次
读取的存储器,例如,当确认进入粘贴状态后,默认首次读取内容的存储器是memcache[1],
那么则从“你好世界”中取出用户选择的区域能够承载的内容进行粘贴,例如,以横向选择
为例,当鼠标横向移动两个字符后,可以将取出“你好”进行粘贴。
[0103] 切换子模块250用于获取切换指令,并根据切换指令,将第一内容替换为第二内容,第二内容是第二存储器中保存的区域能够承载的内容,第二存储器是至少两个的存储
器中与第一存储器不同的一个存储器。其中,第二内容是第二存储器中保存的所选区域能
够承载的内容,第二存储器是至少两个存储器中与第一存储器不同的一个存储器。例如,当
用户将鼠标的滚动轮向上滚动时表明产生切换指令,此时,可以对粘贴的内容进行替换。例
如,将“你好”替换为第二存储器memcache[2]中的“今天”。
[0104] 本发明实施例还提供了一种粘贴装置,通过实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴,并能够在存储空间包括多个
存储器时对粘贴内容进行切换,无需多次手动切换粘贴内容,即可对不同存储器中的内容
进行选择粘贴,可灵活控制粘贴内容,一次性完成粘贴,无需手动删除多余字节,方便快捷,
提升了用户体验。本实施例通过采用多个存储器,可以存储不同的内容,避免后一内容对前
一内容的覆盖,实现不同内容的切换粘贴,方便用户操作。
[0105] 为达到上述目的,本发明实施例提出的客户端设备,包括壳体、处理器、存储器、电路板和电源电路,其中,所述电路板安置在所述壳体围成的空间内部,所述处理器和所述存
储器设置在所述电路板上;所述电源电路,用于为所述移动终端的各个电路或器件供电;所
述存储器用于存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序
代码来运行与所述可执行程序代码对应的程序,以用于执行以下步骤:
[0106] S101’:确定处于粘贴状态。
[0107] 具体地,可以根据对应的存储空间中是否有待粘贴的内容、是否触发预设的粘贴动作等条件来确认当前是否处于粘贴状态。例如,检测存储空间中是否存储有可粘贴的内
容,若有,则可确定处于粘贴状态。
[0108] S102’:在处于粘贴状态后,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴。
[0109] 其中,预先保存的要粘贴的内容可以是用户预先进行复制或剪切的内容。
[0110] 具体地,在本发明的一个实施例中,当确认处于粘贴状态时,可实时获取用户选择的区域,并计算该区域的大小以确定该区域可承载的内容,可按用户选择的区域占用的像
素点数确定能够承载的内容,内容可按字节数或按字数等计量,然后从预先保存的要粘贴
的内容中,取出与区域能够承载的内容等量的内容进行粘贴,使用户可以通过控制所选区
域的大小来控制所要粘贴的内容的多少,从而实现可以控制粘贴字数的自由粘贴。
[0111] 进一步地,当用户将要粘贴的内容存储到存储器后,还可以清空存储空间,例如,用户通过复制得到要粘贴的内容并存入存储器后,如果发现复制错误,可以再次进行复制
操作,如点击复制菜单,以取消先前的复制,清空存储空间,以便为后续复制或剪切操作保
留空间。
[0112] 本发明实施例的客户端设备,通过在处于粘贴状态时,实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴,即根据用户所选区
域的大小确定粘贴内容的多少,使用户能够通过控制所选区域的大小来自由地控制粘贴字
数,一次性完成粘贴,无需手动删除多余字节,方便快捷,提升了用户体验。
[0113] 另一实施例中,处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行以下步骤:
[0114] S201’:获取要粘贴的内容。
[0115] 其中,要粘贴的内容可以是文字、数字、符号、图片等任何可编辑的内容。
[0116] 具体地,可预先通过复制或剪切等方式获取要粘贴的内容,也可以通过未来可能的其他内容获取方式来获取要粘贴的内容,本发明在此不做限定。举例而言,可通过
ontouchlistener函数来监控用户是否产生复制或剪切操作,记为onkeydown事件,当产生
onkeydown事件时记录当时的起始点,起始点可以是起始位置和/或开始的字符,当产生
onkeyup事件时,即复制或剪切操作结束时,记录结束点,结束点可以是结束位置和/或结束
字符,即可获取到起始点到结束点之间的内容作为要粘贴的内容。
[0117] S202’:将要粘贴的内容保存在存储空间中。
[0118] 其中,存储空间用于保存要粘贴的内容。
[0119] 例如,要粘贴的内容是“今天天气特别好呢”,之后,可以将该要粘贴的内容保存在存储空间中。
[0120] 存储空间可以用内存变量(memcache)表示。
[0121] S203’:获取内存变量的长度,当长度不为零时,确定处于粘贴状态。
[0122] 其中,内存变量是预设的用于表征存储空间的变量。
[0123] 在本发明的具体实施例中,终端设备中的程序往往会定义一个内存变量memcache来表征存储空间中存储的要粘贴的内容,首先可检测内存变量的长度memcache.length是
否等于零,若内存变量的长度memcache.length不为0,表明存储空间中存储了要粘贴的内
容,则确定属于粘贴状态;若内存变量的长度memcache.length为0,表明存储空间中没有要
粘贴的内容,则确定为待复制/剪切状态,此时需要执行步骤S201’-S202’来获取并保存要
粘贴的内容。举例而言,例如选定的字符是“今天天气特别好呢”,此时这些字符会存入存储
空间中,因为内存变量的长度memcache.length已经大于0,所以此时可确定为粘贴状态。
[0124] S204’:在处于粘贴状态后,实时获取用户横向选择的区域,并实时将用户横向选择的区域能够承载的内容进行粘贴。
[0125] 其中,用户横向选择的区域可以是用鼠标选择的,例如,鼠标向右侧移动得到横向选择的区域;或者,用户横向选择的区域也可以是在触摸屏上用手指横向滑动选择的。具体
地,可实时获取鼠标在横向上的移动距离;或者,实时获取横向上的触摸滑动距离。举例而
言,在通过鼠标进行操作的终端设备上,例如在电脑上,可实时获取鼠标在横向上的移动距
离;而在通过触控板或触摸屏等触摸式设备进行操作的终端设备上,例如在手机或平板电
脑上,可实时获取用户在触控板或触摸屏上的横向的触摸滑动距离。
[0126] 可以理解的是,为了使得用户能够横向选择区域,需要支持鼠标或手指的横向选择,以鼠标为例,可以设置插件,该插件可以在鼠标横向移动时,光标能够随着鼠标的移动
而移动,该移动可以在空白处进行也可以插入原有文本中并且不覆盖原有文本。具体实现
可以类似现有的点击空格键的处理,由于本发明实施例是针对粘贴的流程,具体鼠标横向
移动或手指横向滑动的支持实现不在本发明的覆盖范围内,在此不再赘述。
[0127] 进一步地,可以通过实时监控用户的行为以实时获取用户横向选择的区域。例如,在处于粘贴状态后,可再次通过ontouchlistener函数中onkeydown事件获取用户的起始
点,在产生起始点后,可以每移动一个字符就粘贴一个字符。例如,在产生起始点后,移动第
一个字符的区域后,将粘贴“今”字,再移动一个字符的区域后,再将“天”字粘贴。依此类推,
随着移动区域的扩大,粘贴更多的内容直至用户停止选择区域,例如产生onkeydown事件
后,停止粘贴。例如,通过用户选择区域可以只粘贴“今天天气特别好”而不再将最后的“呢”
进行粘贴。
[0128] 本发明实施例的客户端设备,通过在处于粘贴状态时,实时获取用户横向选择的区域,并从预先保存的要粘贴的内容中,取出该区域能够承载的内容进行粘贴,能够随着选
择区域的变化实现逐字粘贴,简单直观,使用户能够自由地控制粘贴字数,一次性完成粘
贴,无需手动删除多余字节,方便快捷,提升了用户体验。
[0129] 另一实施例中,处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行以下步骤:
[0130] S301’:获取要粘贴的内容。
[0131] 其中,要粘贴的内容可以是文字、数字、符号、图片等任何可编辑的内容。例如,要粘贴的内容包括两行内容,第一行内容是“好好学习天天向上”,第二行内容是“今天天气特
别好”。
[0132] S302’:将要粘贴的内容保存在存储空间中。
[0133] S303’:取内存变量的长度,当长度不为零时,确定处于粘贴状态。
[0134] S304’:在处于粘贴状态后,实时获取用户纵向选择的区域,并实时将用户纵向选择的区域能够承载的内容进行粘贴。
[0135] 具体可以是向下滚动鼠标的滚轮,例如,每滚动一次滚轮表明向下选择一行内容,或者,手指向下滑动表明向下选择区域。
[0136] 具体如,执行粘贴时,通过滚动鼠标滚轮,当滚动长度达到可承载第一行内容时,将第一行内容进行粘贴,也就是将上述要粘贴的内容的第一行“好好学习天天向上”粘贴出
来。此时,当停止滚动后,将结束粘贴,也就是说“今天天气特别好”将不会被粘贴出来。
[0137] 更进一步地,用户在选择区域时,可将横向选择和纵向选择相结合来对所选区域大小进行控制。例如,可通过手指在屏幕上先纵向滑动一行再横向滑动两个字符,即可将第
一行“好好学习天天向上”以及第二行的前两个字“今天”粘贴出来,而“天气特别好”将不会
被粘贴出来。
[0138] 需要理解的是,用户选择区域时的操作包括但不仅限于以上实施例所述的鼠标操作以及触摸滑动操作,还可以包括键盘与鼠标的组合操作、鼠标按键与鼠标滚轮的组合操
作、长按屏幕后触摸滑动的组合操作等其他预设的区域选择操作。
[0139] 本发明实施例的客户端设备,通过纵向选择区域,实现多行逐行粘贴,可以一次粘贴较多内容,节省粘贴时间;还可以结合横向的逐字粘贴同时操作,简单直观,使用户在粘
贴大量文字时依然能够自由控制粘贴字数,一次性完成粘贴,无需手动删除多余字节,方便
快捷,提升了用户体验。
[0140] 另一实施例中,处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行以下步骤:
[0141] S401’:获取要粘贴的内容,并将要粘贴的内容保存在存储空间。
[0142] 在本发明的一个实施例中,存储空间可包括多个存储器,分别保存不同时刻产生的要粘贴的内容,例如,以两个存储器为例,第一存储器memcache[1]存储“你好世界”,第二
存储器memcache[2]存储“今天是星期二”。
[0143] S402’:获取内存变量的长度,当长度不为零时,确定处于粘贴状态。
[0144] S403’:在处于粘贴状态后,实时获取用户选择的区域,并实时根据用户选择的区域,从第一存储器中取出第一内容进行粘贴。
[0145] 其中,第一内容是第一存储器中保存的用户选择的区域能够承载的内容。
[0146] 第一存储器是预设的默认首次读取的存储器,例如,当确认进入粘贴状态后,默认首次读取内容的存储器是memcache[1],那么则从“你好世界”中取出用户选择的区域能够
承载的内容进行粘贴,例如,以横向选择为例,当鼠标横向移动两个字符后,可以将取出“你
好”进行粘贴。
[0147] S404’:获取切换指令,并根据该切换指令,将第一内容替换为第二内容。
[0148] 其中,第二内容是第二存储器中保存的所选区域能够承载的内容,第二存储器是至少两个存储器中与第一存储器不同的一个存储器。
[0149] 例如,当用户将鼠标的滚动轮向上滚动时表明产生切换指令,此时,可以对粘贴的内容进行替换。例如,将“你好”替换为第二存储器memcache[2]中的“今天”。
[0150] 本发明实施例的客户端设备,通过实时获取用户选择的区域,并从预先保存的要粘贴的内容中,取出区域能够承载的内容进行粘贴,并能够在存储空间包括多个存储器时
对粘贴内容进行切换,无需多次手动切换粘贴内容,即可对不同存储器中的内容进行选择
粘贴,可灵活控制粘贴内容,一次性完成粘贴,无需手动删除多余字节,方便快捷,提升了用
户体验。本实施例通过采用多个存储器,可以存储不同的内容,避免后一内容对前一内容的
覆盖,实现不同内容的切换粘贴,方便用户操作。
[0151] 需要说明的是,在本发明的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义
是两个或两个以上。
[0152] 流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部
分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺
序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明
的实施例所属技术领域的技术人员所理解。
[0153] 应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件
或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下
列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路
的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场
可编程门阵列(FPGA)等。
[0154] 本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介
质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0155] 此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模
块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如
果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机
可读取存储介质中。
[0156] 上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[0157] 在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特
点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不
一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何
的一个或多个实施例或示例中以合适的方式结合。
[0158] 在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
[0159] 在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内
部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情
况理解上述术语在本发明中的具体含义。
[0160] 在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在
第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示
第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第
一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
[0161] 尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述
实施例进行变化、修改、替换和变型。