专利名称:在交互界面上进行目标对象选中的方法及装置的制作方法
技术领域:
本发明涉及数字处理技术领域,特别涉及一种在交互界面上进行目 标对象选中的方法和装置。
背景技术:
目前,显示屏广泛存在于多种电子设备中,例如电脑、手机、游戏 机等。显示屏用来显示电子设备与外界的交互界面,从而实现电子设备 与外界的信息交互。显示屏分为触摸式和非触摸式,触摸式显示屏(触 摸屏)是通过人手、写字笔或者其它装置来直接接触显示屏,在显示屏 上点击来实现交互界面上目标对象的选中,非触摸式显示屏(普通屏) 是通过鼠标或者其它旋钮来在显示屏上点击来实现交互界面上目标对 象的选中。
然而,目前不论是利用触摸屏的设备还是利用普通屏的设备,选中 目标对象的方法中往往都是通过点选的方式,都是通过外部设备,例如 触摸屏、鼠标或者旋钮等,来调动指点指针在交互界面上精确定位目标
对象,再确定选中,例如图1所示利用鼠标进行选中的方法具体为通 过鼠标的移动,将指点指针移动到交互界面上的目标对象上,再用鼠标 点击目标对象,从而使指点指针选中目标对象。而触摸屏则是用手或者 写字笔在触摸屏上移动,将指点指针移动到交互界面上的目标对象上, 再用手或者写字笔点击目标对象,从而使指点指针选中目标对象。因此 可以看出在上述选中方式中,都是采用点选的方式,这就需要输入设备 精确的定位目标对象,因此使交互效率较低,而且容易出错。
进一步的,随着交互方式的多样化,如利用触摸屏的普及,传统的 点选目标对象的方式在通用性上遇到了挑战。传统交互界面长期以来都 是针对以鼠标为主的输入设备,因此交互界面尺寸和交互界面上的对象 的尺寸都很小,致使很多交互界面,并不适合手或写字笔,尤其是窗口、 下拉菜单或者选项按钮等,因此影响了最终的输入效果,使交互效率较
4低,而且容易出错。
为了使交互界面更适合触摸操作,也有一些改进的技术方案,例如 增大交互界面的尺寸、增加按钮或滚动条的尺寸,但是交互界面完全的 修改是一个长期的过程,需要各厂商的参与支持,完全实现所有交互界 面对于触:t莫交互界面的支持,目前来看,还为时尚早。而且改变了交互 界面尺寸又会变的不适合鼠标这类精确定位的输入设备,同时改变了用
户的使用习惯。还有的改进技术方案利用间接控制,例如Microsoft Windows vista操作系统中的触摸指点指针的方法是用手指调出 一个虚 拟鼠标,再操作这个虚拟鼠标。这类方案的缺点是使交互方式出现迂回, 效率降低。
因此从上述内容可以看出,现有的以点选的方式选中目标对象的 方法,存在交互效率低,容易出错的问题。
尤其对于现有的交互界面,通过触摸屏以点选的方式选中目标对象 的方法使得交互效率更低,更加容易出错,甚至不能实现选中。
发明内容
为了解决上述问题,本发明实施例提供了一种以线选的方式在交互 界面上进行目标选中的方法,提高了交互效率,使交互的精确度更高。
本发明的一个实施例提供如下技术方案 一种在交互界面上进行目 标对象选中的方法,包括步骤使指点指针在交互界面上以一条连续线 移动;记录所述指点指针在所述交互界面上以一条连续线移动时所形成 的移动轨迹;跟据所述移动轨迹,确定跟所述移动轨迹相关的目标对象; 选中所述目标对象。
在上述实施例中,
优选的,所述移动轨迹具有交点;所述目标对象具体为距离所述 交点最近的目标对象。
优选的,所述移动轨迹具有交点;所述目标对象为在所述移动轨 迹的封闭范围内的且距离所述交点最近的目标对象。
优选的,所述交点为在形成所述移动轨迹过程中因第一次相交而形成的点。
优选的,所述移动轨迹的交点小于4个。
优选的,所述移动轨迹具有交点;所述目标对象为所述移动轨迹 的封闭范围内的目标对象。
优选的,所述移动轨迹具有交点;所述目标对象具体为在所述移 动轨迹的封闭范围内且被所述移动轨迹所经过的目标对象。
优选的,所述确定跟所述移动轨迹相关的目标对象包括确定所述 交点;确定所述指点指针在第二次经过所述交点之后的移动轨迹;确定 在所述封闭范围内,并且所述第二次经过所述交点之后的移动轨迹所经 过的目标对象。
本发明的另一个实施例提供如下技术方案 一种在交互界面上进行 目标对象选中的装置,包括输入设备、输出设备、指点设备驱动模块、 预处理模块和选中模块,其中
输出设备,用来显示交互界面;
输入设备,用来调动指点指针在所述交互界面上移动; 指点设备驱动模块,用来获取所述交互界面上的所述指点指针的移 动轨迹;
预处理模块,用来跟据所述移动轨迹提取跟所述移动轨迹相关的目 标对象;
选中模块,用来选中所述目标对象。 在上述实施例中,
优选的,所述移动轨迹具有一交点,所述目标对象具体为距离所述 交点最近的目标对象。
优选的,所述移动轨迹具有封闭范围,所述目标对象为在所述封闭 范围内且距离所述交点最近的目标对象。上述实施例中的至少一实施例 具有如下至少的优点
由于以线选的方式代替点选的方式,在交互界面上进行目标对象的 选中,所以本发明实施例中的技术方案更加符合用户在真实世界中的自然交互习惯,减少了用户精准认知的负担,降低了操作的错误率,提高
了交互效率,使交互的精确度更高。
图1为现有技术中一种在交互界面上点选目标对象的方法; 图2为本发明的在交互界面上进行目标对象选中的方法一实施例的 流程图3-图8为本发明的在交互界面上进行目标对象选中的方法中 一种 指点指针在交互界面上的移动轨迹示意图9为本发明的在交互界面上进行目标对象选中的装置结构示意
图10为本发明的第四实施例中,在交互界面上进行目标对象选中
的装置工作示意图。
具体实施例方式
下面结合附图对本发明的具体实施方式
估支详细的说明。
下面实施例为本发明在具有触摸屏幕的手机,或者电脑中的应用。
实施一
本实施例以触摸式显示屏为例,进行说明。触摸屏用来显示交互界 面,便于用户操作。同时触摸屏即是输出设备又是输入设备,作为输出 设备,触摸屏将交互界面显示出来;作为输入设备,用户可以通过触摸 屏调动指点指针,从而将信息输入交互界面,然后执行相应的操作。 S100:使指点指针在交互界面上以一条连续线移动。 用户如果想要选中显示屏上的某个目标对象,首先需要在触摸屏上 用手指或写字笔围绕想选中的目标对象画一条具有交点的连续线,例如 闭合曲线,同时触摸屏会调动指点指针在交互界面上跟手指或写字笔进 行相同轨迹的移动。例如指点指针的移动轨迹如图3所示,图3中为在 交互界面上建立坐标系,其中横轴为x轴,纵轴为y轴,因此曲线上的 点就对应于该坐标系中的4黄坐标和纵坐标,例如曲线上的点Dl,就对
7应的一黄坐标为xl,纟从坐标为yl。
S105:记录所述指点指针在所述交互界面上以一条连续线移动时所 形成的移动轨迹。
当指点指针在交互界面上移动的同时,记录指点指针从起始点移动 所经过交互界面上的点的位置坐标,也就是指点指针的移动轨迹。例如 如图3所示的,从写字笔接触触摸屏的位置为起始点Dl,起始点Dl 的坐标为(xl、 yl),这时相应的指点指针在交互界面上对应相同的起 始点Dl,从此时起指点设备驱动模块记录指点指针在交互界面上移动 经过的所有点的坐标,也可以记录特殊点的坐标,例如拐点坐标或者间 隔相同距离的点的坐标。在本实施例中记录指点指针移动轨迹的从起始 点Dl到结束点Dll的所有拐点的坐标,其中结束点Dll也就是写字笔 抬起离开触摸屏的位置,对应的指点指针在交互界面上的停止位置也为 Dll,例如下表中的D1-D11:
序号类型坐标值
Dl起始点xl,yl
D2拐点x2,y2
D3拐点x3,y3
D4拐点x4,y4
D5拐点x5,y5
D6拐点x6,y6
D7拐点x7,y7
D8拐点x8,y8
D9拐点x9,y9
D10拐点xl0,y10
Dll结束点xll,yll
S110:根据所述移动轨迹,确定跟所述移动轨迹相关的目标对象。
8在本实施例中具体可以为当所述指点指针在交互界面上的移动轨 迹出现交点时,计算交点的位置。所述计算交点可以利用本领域技术人
员熟知的方法,例如判断点D1、 D2之间的线段和点D3、 D4之间的线 段是否有交点;然后依次判断任意两段不相邻的线段是否有交点。当计 算到有交点时,则利用本领域技术人员熟知的方法计算交点的位置坐 标,例如交点Dj的坐标为(5, 8)。
在本实施例中具体采用下面的方法来计算交点位置
其中K为指点指针移动轨迹上点的总数,n、 m为自然数,
If(K〈4)
Return轨迹没有交点;
For(n from 1 to K)
If(n<2)
Continue; 线—歐a:点n-1和点n连成 For(m from 1 to n-2)
线,炎b:点m和点m+1连成
If(线l殳a和线^:b有交点,坐标为(x,y))
Return 4九迹含有交点(x,y); Return l九迹^L有交点;
上述算法包含了一个子算法,也就是判断两条线段是否有交点。此 算法为本领域技术人员熟知的,因此不再赘述。
根据交点的位置坐标,计算距离交点最近的目标对象,可以利用本领域技术人员熟知的方法,例如通常目标对象在交互界面上具有一定的 面积,因此目标对象在坐标系中需要用坐标阵列表示,那么只要交点的 坐标位于目标对象的坐标阵列内则说明该目标对象就为交点所在位置 的目标对象,因此可以通过交点的坐标搜索到交点位置对应的目标对
象。如图4所示,例如在一个实施例中,可以通过比对交点Dj的位置 坐标(5, 8)和目标对象M1的横坐标在1-10,纵坐标在6-9范围内的 坐标阵列,^v而可以判断出交点Dj的位置对应的目标对象为目标对象 Ml,目标对象M1也就是距离交点Dj最近的目标对象。
另外,如果交点也为一个坐标阵列,也可以通过比对交点的位置坐 标阵列和目标对象的位置坐标阵列,从而确定位于交点位置的目标对象。
除此之外,还可以确定指点指针的多个交点,例如2个、3个所经 过的目标对象。
从上述实施例中所述交点为在形成所述移动轨迹过程中因第一次 相交而形成的点,除此之外,也可以为第二次和第三次相交而形成的点。
在上述实施例中,所述的移动4九迹的交点少于4个。当交点大于4 个为不可识别的操作。
除上述之外,在本实施例中,步骤110还可以包括如果交点位置 没有目标对象,则寻找距离交点最近的目标对象,例如可以通过目标对 象的坐标阵列,确定距离所述交点最近的目标对象的坐标阵列,从而可 以得到距离所述交点最近的目标对象。
另外,所述目标对象还可以为在所述移动轨迹的封闭范围内的且 距离所述交点最近的目标对象。确定跟所述移动轨迹相关的目标对象的 方法可以为
因为指点指针在交互界面上以一条连续线移动,且移动轨迹具有交 点,因此移动轨迹可以包括闭合曲线,因此计算所述移动轨迹的封闭范 围内的目标对象,也就是所述闭合曲线范围内的目标对象。可以利用本 领域技术人员熟知的方法,例如如图5所示,先确定所述移动轨迹Q1的封闭范围内的点的坐标,比对所述点的坐标和目标对象的阵列,从而
确定在移动轨迹Ql的封闭范围内的目标对象,例如Ml和M2。再比对 在移动轨迹Ql范围内的目标对象Ml、 M2和交点Dj的坐标,从而确 定在移动轨迹Ql的封闭范围内的目标对象Ml和M2中距离所述交点 Dj位置最近的目标对象Ml 。 S120:选中所述目标对象。
然后选中目标对象Ml,选中方式可以采用本领域才支术人员熟知的 方法,例如可以通过Windows的系统消息发送API函数调用方式,直 接向该交点所在位置发送一个点击消息,具体可以使用SendMessage函 数向当前窗口发送鼠标单击消息来选中交点位置的目标对象Ml。
另外,步骤110也可以不判断交点位置是否有目标对象,直接向该 交点位置发送鼠标单击消息来选中交点位置的目标对象。
实施例二
在本实施例中以非触摸式显示屏(普通屏)为例进行说明。因为是 普通屏因此不能作为输入设备,需要鼠标作为输入设备。因此在本实施 例中所述指点指针为鼠标指针,所述指点设备为鼠标。 S200:使指点指针在交互界面上以一条连续线移动。 具体可以为拖动鼠标,使鼠标带动指点指针在交互界面上以一条 连续线移动,形成如图6所示的移动轨迹Q2,所述移动轨迹具有交点, 因此包括闭合曲线,并且在该移动轨迹Q2的封闭范围内具有所要选中 的目标对象M3。也就是在闭合曲线的封闭范围内具有所要选中的目标 对象M3。
S205:记录所述指点指针在所述交互界面上以一条连续线移动时所 形成的移动4九迹。
记录移动轨迹Q2在交互界面上的位置坐标。
S210:根据所述移动轨迹,确定跟所述移动轨迹相关的目标对象。
在本实施例中具体为确定所述移动轨迹的封闭范围内的目标对象。具体为确定所述移动轨迹Q2的封闭范围内的目标对象M3。可以利用本领域技术人员熟知的方法,例如先确定移动轨迹Q3的封闭范围内的点的坐标,比对所述点的坐标和目标对象M3的阵列,^v而确定目标对象M3为在移动轨迹的封闭范围内的目标对象。S220:选中所述目标对象。
在本实施例中可以具体为选中所述移动轨迹的封闭范围内的目标对象。选中方式可以釆用本领域:忮术人员熟知的方法,例如可以通过Windows的系统消息发送API函数调用方式,直接向该交点所在位置发送一个点击消息,具体可以使用SendMessage函数向当前窗口发送鼠标单击消息来选中交点位置的目标对象M3。如果交点位置没有目标对象,则寻找与交点位置距离最近的目标对象,例如可以通过目标对象的阵列,判断与交点位置最近的阵列,从而可以得到与交点位置距离最近的目标对象,选中该目标对象,例如可以通过Windows的系统消息发送API函数调用方式,向该目标对象的所在位置发送一个点击消息,例如使用SendMessage函数向当前窗口发送鼠标单击消息来选中交点位置的目标对象。
从上述实施例中,所述交点为在形成所述移动轨迹过程中因第一次相交而形成的点,除此之夕卜,也可以为第二次和第三次相交而形成的点。
在上述实施例中,所述的移动轨迹的交点少于4个。当交点大于4个为不可识别的操作。
另夕卜,在上述实施例中当移动轨迹的封闭范围内包括不止一个目标对象时,所述目标对象具体为在所述移动轨迹的封闭范围内且被所述移动轨迹所经过的目标对象。例如可以具体采用下列方法根据所述移动轨迹,确定跟所述移动轨迹相关的目标对象在所述移动轨迹的封闭范围内的目标对象中搜索所述活动轨迹经过的目标对象。例如如图7所示,所述移动轨迹Q2包括闭合曲线Q3,移动轨迹Q2上除闭合曲线Q3之外的部分为第一曲线Q4;然后计算第一曲线Q4的位置;接着在所述移动轨迹Q2的封闭范围内的目标对象中计算第一曲线Q4所经过的目标
12对象。
根据所述移动轨迹,确定跟所述移动轨迹相关的目标对象可以具体
为确定所述交点Dj;确定所述指点指针在第二次经过所述交点Dj之后的移动轨迹;确定在所述封闭范围内,并且所述第二次经过所述交点Dj之后的移动轨迹所经过的目标对象。
实施例三
在本实施例中以非触摸式显示屏(普通屏)为例进行说明。因为是普通屏,因此不能作为输入设备,需要鼠标作为输入设备。
S300:使指点指针在交互界面上以一条连续线移动。
S305:记录所述指点指针在所述交互界面上以一条连续线Q4移动时所形成的移动4九迹。
记录如图8所示的移动轨迹Q4的在交互界面上的位置坐标。S310:根据所述移动轨迹,确定跟所述移动轨迹相关的目标对象。
在本实施例中为计算所述移动4九迹所经过的目标对象M3。例如利用指点指针在交互界面上的移动轨迹的坐标来搜索移动轨迹所经过的目标对象。
S320:选中所述目标对象M3。
选中所述移动轨迹所经过的目标对象。参考实施例一或二,不再赘述。
除上述3个实施例之外,还可以采用其他的方式跟据指点指针的移动轨迹确定和移动轨迹相关的目标对象,例如移动轨迹可以不具有交点,所要选中的目标对象可以为经过大于一半长度的移动轨迹的目标对象。
另外上述实施例还可以结合使用,例如先判断在指点指针的移动轨迹的封闭范围内是否有目标对象,如果有则选中,如果没有则判断移动轨迹的封闭范围内距离移动轨迹的交点距离最近的目标对象或者移动轨迹经过的目标对象,选中。
13实施例四
一种在交互界面上进行目标对象选中的装置,包括输入设备IO、指
点设备驱动模块20、预处理模块30、选中模块40和输出设备50,其中,输出设备50用来显示交互界面;输入设备IO用来调动指点指针在交互界面上移动;指点设备驱动模块20用来获取交互界面上的指点指针活动轨迹;预处理模块30用来跟据所述指点指针的移动轨迹提取跟所述移动轨迹相关的目标对象;选中模块40用来选中所述目标对象。在本实施例中,输入设备IO可以为鼠标或者触摸显示屏。指点设备驱动模块20包括指点指针和记录模块,指点指针的作用是定位要选中的目标对象在交互界面上的位置,记录模块的作用是记录指点指针的移动轨迹。
指点设备驱动模块的指点指针在交互界面上以 一条连续线移动,并且记录所述指点指针在所述交互界面上以一条连续线移动时所形成的移动轨迹。所述移动轨迹可以具有交点。
预处理模块30根据所述移动轨迹,确定跟所述移动轨迹相关的目标对象。具体可以采用下述方法
例如确定距离所述交点位置最近的目标对象。或者,确定所述移动轨迹的封闭范围内的目标对象。或者,确定所述移动轨迹的封闭范围内的且距离所述交点最近的目标对象。
或者,确定在所述移动轨迹的封闭范围内且被所述移动轨迹所经过的目标对象
选中模块40选中所述目标对象。
例如在交互界面上进行目标对象选中的装置可以是计算机,选中模块40包括Window窗口管理模块和应用程序窗口。通过指点设备,例如鼠标的移动,使指点指针在交互界面上移动,指点设备驱动模块的记指点指针的移用轨迹,将包含移动轨迹的指点消息发送给预处理模块,预处理模块根据预定的信息确定指点指针选中的目标对象,并将包含该
目标对象的Window指点消息发送给计算机的Window窗口管理模块,Window窗口管理模块向应用程序窗口发出选中指令。
本发明虽然以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以做出可能的变动和修改,因此本发明的保护范围应当以本发明权利要求所界定的范围为准。
权利要求
1、一种在交互界面上进行目标对象选中的方法,其特征在于,包括步骤使指点指针在交互界面上以一条连续线移动;记录所述指点指针在所述交互界面上以一条连续线移动时所形成的移动轨迹;根据所述移动轨迹,确定跟所述移动轨迹相关的目标对象;选中所述目标对象。
2、 如权利要求l所述的方法,其特征在于,其特征在于, 所述移动轨迹具有交点;所述目标对象具体为距离所述交点最近的目标对象。
3、 如权利要求l所述的方法,其特征在于, 所述移动轨迹具有交点;所述目标对象为在所述移动轨迹的封闭范围内的且距离所述交点 最近的目标对象。
4、 如权利要求2或3所述的方法,其特征在于,所述交点为在形 成所述移动轨迹过程中因第 一次相交而形成的点。
5、 如权利要求1所述的方法,其特征在于,所述移动轨迹的交点 小于4个。
6、 如权利要求l所述的方法,其特征在于, 所述移动轨迹具有交点;所述目标对象为所述移动轨迹的封闭范围内的目标对象。
7、 如权利要求l所述的方法,其特征在于, 所述移动轨迹具有交点;所述目标对象具体为在所述移动轨迹的封闭范围内且被所述移动 轨迹所经过的目标对象。
8、 如权利要求7所述的方法,其特征在于,所述确定跟所述移动 轨迹相关的目标对象包括确定所述交点;确定所述指点指针在第二次经过所述交点之后的移动轨迹;确定在所述封闭范围内,并且所述第二次经过所述交点之后的移动 轨迹所经过的目标对象。
9、 一种在交互界面上进行目标对象选中的装置,其特征在于,包 括输入设备、输出设备、指点设备驱动模块、预处理模块和选中模块, 其中输出设备,用来显示交互界面; 输入设备,用来调动指点指针在所述交互界面上移动; 指点设备驱动模块,用来获取所述交互界面上的所述指点指针的移 动轨迹;预处理模块,用来跟据所述移动轨迹提取跟所述移动轨迹相关的目 标对象;选中模块,用来选中所述目标对象。
10、 如权利要求9所述的方法,其特征在于,所述移动轨迹具有一 交点,所述目标对象具体为距离所述交点最近的目标对象。
11、 如权利要求9所述的方法,其特征在于,所述移动轨迹具有封 闭范围,所述目标对象为在所述封闭范围内且距离所述交点最近的目标 对象。
全文摘要
本发明提供了一种在交互界面上进行目标对象选中的方法及装置,该方法包括步骤使指点指针在交互界面上以一条连续线移动;记录所述指点指针在所述交互界面上以一条连续线移动时所形成的移动轨迹;根据所述移动轨迹,确定跟所述移动轨迹相关的目标对象;选中所述目标对象。本发明以线选的方式在交互界面上进行目标选中的方法,更加符合用户在真实世界中的自然交互习惯,减少了用户精准认知的负担,降低了操作的错误率,提高了交互效率,使交互的精确度更高。
文档编号G06F3/048GK101673168SQ200810119918
公开日2010年3月17日 申请日期2008年9月9日 优先权日2008年9月9日
发明者叶颖华, 光 周, 远 郜 申请人:联想(北京)有限公司