1.一种基于电视应用程序的光标控制方法,其特征在于,包括步骤有:
光标坐标系建立步骤,当电视应用程序在屏幕上加载完成后,将所述屏幕上的所有按钮转换为光标节点,所述光标节点按照二维直角坐标系排列,并将所述光标节点添加到对应的集合中;
光标控制步骤,通过所述电视应用程序的光标管理器监听遥控器的按键操作,以控制光标在所述光标节点上的移动和/或展现;
所述屏幕上所有的所述光标节点组成的集合为根节点;
所述屏幕上部分的所述光标节点组成的集合为子节点;
所述根节点和所述子节点形成父子层级关系,每个所述子节点构成子坐标系,并且不同的所述子节点可组成新的子节点。
2.根据权利要求1所述的光标控制方法,其特征在于,所述光标节点设有状态属性,所述状态属性包括无效状态和有效状态;
所述光标坐标系建立步骤还包括:
过滤掉无效状态的所述光标节点,重新建立所述子坐标系;或者
当所述屏幕的内容发生更新时,通过新的光标节点来替换失效的光标节点,重新建立所述子坐标系。
3.根据权利要求1所述的光标控制方法,其特征在于,当所述光标移至所述光标节点时为亮起状态,当所述光标离开所述光标节点时为消失状态;
所述光标控制方法还包括:
为所述亮起状态和/或所述消失状态设置第一自定义操作和/或第二自定义操作;
所述光标控制步骤还包括:
当所述光标节点为所述亮起状态时,所述电视机应用程序执行所述第一自定义操作;
和/或
当所述光标节点为所述消失状态时,所述电视机应用程序执行所述第二自定义操作。
4.根据权利要求1所述的光标控制方法,其特征在于,还包括:
为所述遥控器的确认键操作设置第三自定义操作;
所述光标控制步骤还包括:
当所述光标管理器监听到所述遥控器的确认键操作时,所述电视机应用程序执行所述第三自定义操作。
5.根据权利要求1所述的光标控制方法,其特征在于,还包括:
为所述集合的边界操作设置第四自定义操作,所述边界操作包括进入集合操作、到达左边界操作、到达右边界操作、到达下边界操作、到达上边界操作和/或离开集合操作;
所述光标控制步骤还包括:
当所述光标管理器监听到所述边界操作时,所述电视机应用程序执行所述第四自定义操作。
6.根据权利要求1~5任一项所述的光标控制方法,其特征在于,所述光标移至某个所述光标节点时,所述某个光标节点经高亮处理后成为高亮节点;
所述光标控制步骤还包括:
当所述光标管理器监听到所述遥控器的方向按键操作后,根据当前高亮节点的位置以及所述方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个所述光标节点进行高亮处理。
7.根据权利要求6所述的光标控制方法,其特征在于,所述光标控制步骤还包括:
在所述屏幕加载完成后,所述光标管理器初始化一个默认亮起的默认高亮节点;
当所述光标管理器监听到所述遥控器的方向按键操作后,根据所述默认高亮节点的位置以及所述方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个所述光标节点进行高亮处理。
8.根据权利要求6所述的光标控制方法,其特征在于,所述光标节点设有状态属性,所述状态属性包括无效状态和有效状态;
所述光标控制步骤还包括:
若根据所述当前高亮节点的位置以及方向按键操作对应的坐标偏移量,找到对应的下一个光标节点为无效状态,则所述光标管理器继续查找下一个光标节点,直到找到有效状态的所述光标节点或到达所述集合的边界;或者
所述光标控制步骤还包括:
所述光标管理器根据所述电视机应用程序的指定坐标位置或指定坐标信息来查找指定光标节点。
9.根据权利要求6所述的光标控制方法,其特征在于,所述光标控制步骤还包括:
当所述高亮节点位于所述集合边界时,若所述光标管理器监听到所述遥控器的方向按键操作,则判断所述集合之外是否存在其他集合;
若存在所述其他集合,则将所述光标移至所述其他集合;
若不存在所述其他集合,则所述光标停止不动。
10.一种基于电视应用程序的光标控制系统,其特征在于,包括有:
光标坐标系建立模块,用于当电视应用程序在屏幕上加载完成后,将所述屏幕上的所有按钮转换为光标节点,所述光标节点按照二维直角坐标系排列,并将所述光标节点添加到对应的集合中;
光标控制模块,用于通过所述电视应用程序的光标管理器监听遥控器的按键操作,以控制光标在所述光标节点上的移动和/或展现;
所述屏幕上所有的所述光标节点组成的集合为根节点;
所述屏幕上部分的所述光标节点组成的集合为子节点;
所述根节点和所述子节点形成父子层级关系,每个所述子节点构成子坐标系,并且不同的所述子节点可组成新的子节点。
11.根据权利要求10所述的光标控制系统,其特征在于,所述光标节点设有状态属性,所述状态属性包括无效状态和有效状态;
所述光标坐标系建立模块还包括:
过滤子模块,用于过滤掉无效状态的所述光标节点,重新建立所述子坐标系;或者替换子模块,用于当所述屏幕的内容发生更新时,通过新的光标节点来替换失效的光标节点,重新建立所述子坐标系。
12.根据权利要求10所述的光标控制系统,其特征在于,当所述光标移至所述光标节点时为亮起状态,当所述光标离开所述光标节点时为消失状态;
所述光标控制系统还包括设置模块,所述设置模块包括:
第一设置子模块,用于为所述亮起状态设置第一自定义操作;和/或
第二设置子模块,用于为所述消失状态设置第二自定义操作;
所述光标控制模块还包括:
第一执行子模块,用于当所述光标节点为所述亮起状态时,所述电视机应用程序执行所述第一自定义操作;和/或
第二执行子模块,用于当所述光标节点为所述消失状态时,所述电视机应用程序执行所述第二自定义操作。
13.根据权利要求10所述的光标控制系统,其特征在于,还包括设置模块,所述设置模块包括:
第三设置子模块,用于为所述遥控器的确认键操作设置第三自定义操作;
所述光标控制模块还包括:
第三执行子模块,用于当所述光标管理器监听到所述遥控器的确认键操作时,所述电视机应用程序执行所述第三自定义操作。
14.根据权利要求10所述的光标控制系统,其特征在于,还包括设置模块,所述设置模块包括:
第四设置子模块,用于为所述集合的边界操作设置第四自定义操作,所述边界操作包括进入集合操作、到达左边界操作、到达右边界操作、到达下边界操作、到达上边界操作和/或离开集合操作;
所述光标控制模块还包括:
第四执行子模块,用于当所述光标管理器监听到所述边界操作时,所述电视机应用程序执行所述第四自定义操作。
15.根据权利要求10~14任一项所述的光标控制系统,其特征在于,所述光标移至某个所述光标节点时,所述某个光标节点经高亮处理后成为高亮节点;
所述光标控制模块还包括:
移动子模块,用于当所述光标管理器监听到所述遥控器的方向按键操作后,根据当前高亮节点的位置以及所述方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个所述光标节点进行高亮处理。
16.根据权利要求15所述的光标控制系统,其特征在于,所述移动子模块还用于在所述屏幕加载完成后,所述光标管理器初始化一个默认亮起的默认高亮节点;以及当所述光标管理器监听到所述遥控器的方向按键操作后,根据所述默认高亮节点的位置以及所述方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个所述光标节点进行高亮处理。
17.根据权利要求15所述的光标控制系统,其特征在于,所述光标节点设有状态属性,所述状态属性包括无效状态和有效状态;
所述移动子模块还用于若根据所述当前高亮节点的位置以及方向按键操作对应的坐标偏移量,找到对应的下一个光标节点为无效状态,则所述光标管理器继续查找下一个光标节点,直到找到有效状态的所述光标节点或到达所述集合的边界;或者所述移动子模块还用于通过所述光标管理器根据所述电视机应用程序的指定坐标位置或指定坐标信息来查找指定光标节点。
18.根据权利要求15所述的光标控制系统,其特征在于,所述移动子模块还用于当所述高亮节点位于所述集合边界时,若所述光标管理器监听到所述遥控器的方向按键操作,则判断所述集合之外是否存在其他集合;若存在所述其他集合,则将所述光标移至所述其他集合;若不存在所述其他集合,则所述光标停止不动。
基于电视应用程序的光标控制方法及系统\n技术领域\n[0001] 本发明涉及电视及多媒体技术领域,尤其涉及一种基于电视应用程序的光标控制方法及系统。\n背景技术\n[0002] 众所周知,电视机的输入设备是遥控器,连接机顶盒的互联网电视也如此。在计算机上通过移动鼠标点击的操作,在电视APP(Application,应用程序)上只能通过遥控器的“上/下/左/右”按键将光标框移动到需要的位置(按钮)上,然后点击“确定”进行相关操作。\n现有机顶盒的底层系统,对于遥控器控制光标移动的逻辑是,根据“按钮”在屏幕的位置来确定。例如按“左”键,就将光标框移动到左边的按钮上。“右”就移动到右边的按钮上。但是随着电视APP尤其是高清APP中的展示特效越来越多,一些特效会使得按钮的位置和状态发生变化。例如一些动画会导致按钮的位置发生变化,或按钮的状态不能点击;光标移到按钮上时,按钮需要展现另一种风格的UI(User Interface,用户界面)。或者光标框移到最边上时,需要发生翻页或滚动效果等等。处理这些特殊情况时,原始的光标系统不能满足新的设计需求。而且现有机顶盒的底层系统,都允许应用程序直接监听遥控器的按键操作,所以这就为APP自己实现光标管理提供了可能。\n[0003] 综上可知,现有技术在实际使用上显然存在不便与缺陷,所以有必要加以改进。\n发明内容\n[0004] 针对上述的缺陷,本发明的目的在于提供一种基于电视应用程序的光标控制方法及系统,其能够使得光标的控制和展现更为灵活,优选提供众多接口留给应用程序操作,使得应用程序的开发变得更简便,可能实现丰富的展示效果。\n[0005] 为了实现上述目的,本发明提供一种基于电视应用程序的光标控制方法,包括步骤有:\n[0006] 光标坐标系建立步骤,当电视应用程序在屏幕上加载完成后,将所述屏幕上的所有按钮转换为光标节点,所述光标节点按照二维直角坐标系排列,并将所述光标节点添加到对应的集合中;\n[0007] 光标控制步骤,通过所述电视应用程序的光标管理器监听遥控器的按键操作,以控制光标在所述光标节点上的移动和/或展现。\n[0008] 根据本发明所述的光标控制方法,所述屏幕上所有的所述光标节点组成的集合为根节点;\n[0009] 所述屏幕上部分的所述光标节点组成的集合为子节点;\n[0010] 所述根节点和所述子节点形成父子层级关系,每个所述子节点构成子坐标系,并且不同的所述子节点可组成新的子节点。\n[0011] 根据本发明所述的光标控制方法,所述光标节点设有状态属性,所述状态属性包括无效状态和有效状态;\n[0012] 所述光标坐标系建立步骤还包括:\n[0013] 过滤掉无效状态的所述光标节点,重新建立所述子坐标系;或者\n[0014] 当所述屏幕的内容发生更新时,通过新的光标节点来替换失效的光标节点,重新建立所述子坐标系。\n[0015] 根据本发明所述的光标控制方法,当所述光标移至所述光标节点时为亮起状态,当所述光标离开所述光标节点时为消失状态;\n[0016] 所述光标控制方法还包括:\n[0017] 为所述亮起状态和/或所述消失状态设置第一自定义操作和/或第二自定义操作;\n[0018] 所述光标控制步骤还包括:\n[0019] 当所述光标节点为所述亮起状态时,所述电视机应用程序执行所述第一自定义操作;和/或\n[0020] 当所述光标节点为所述消失状态时,所述电视机应用程序执行所述第二自定义操作。\n[0021] 根据本发明所述的光标控制方法,还包括:\n[0022] 为所述遥控器的确认键操作设置第三自定义操作;\n[0023] 所述光标控制步骤还包括:\n[0024] 当所述光标管理器监听到所述遥控器的确认键操作时,所述电视机应用程序执行所述第三自定义操作。\n[0025] 根据本发明所述的光标控制方法,还包括:\n[0026] 为所述集合的边界操作设置第四自定义操作,所述边界操作包括进入集合操作、到达左边界操作、到达右边界操作、到达下边界操作、到达上边界操作和/或离开集合操作;\n[0027] 所述光标控制步骤还包括:\n[0028] 当所述光标管理器监听到所述边界操作时,所述电视机应用程序执行所述第四自定义操作。\n[0029] 根据本发明所述的光标控制方法,所述光标移至某个所述光标节点时,所述某个光标节点经高亮处理后成为高亮节点;\n[0030] 所述光标控制步骤还包括:\n[0031] 当所述光标管理器监听到所述遥控器的方向按键操作后,根据当前高亮节点的位置以及所述方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个所述光标节点进行高亮处理。\n[0032] 根据本发明所述的光标控制方法,所述光标控制步骤还包括:\n[0033] 在所述屏幕加载完成后,所述光标管理器初始化一个默认亮起的默认高亮节点;\n[0034] 当所述光标管理器监听到所述遥控器的方向按键操作后,根据所述默认高亮节点的位置以及所述方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个所述光标节点进行高亮处理。\n[0035] 根据本发明所述的光标控制方法,所述光标节点设有状态属性,所述状态属性包括无效状态和有效状态;\n[0036] 所述光标控制步骤还包括:\n[0037] 若根据所述当前高亮节点的位置以及方向按键操作对应的坐标偏移量,找到对应的下一个光标节点为无效状态,则所述光标管理器继续查找下一个光标节点,直到找到有效状态的所述光标节点或到达所述集合的边界;或者\n[0038] 所述光标控制步骤还包括:\n[0039] 所述光标管理器根据所述电视机应用程序的指定坐标位置或指定坐标信息来查找指定光标节点。\n[0040] 根据本发明所述的光标控制方法,所述光标控制步骤还包括:\n[0041] 当所述高亮节点位于所述集合边界时,若所述光标管理器监听到所述遥控器的方向按键操作,则判断所述集合之外是否存在其他集合;\n[0042] 若存在所述其他集合,则将所述光标移至所述其他集合;\n[0043] 若不存在所述其他集合,则所述光标停止不动。\n[0044] 本发明还提供一种基于电视应用程序的光标控制系统,包括有:\n[0045] 光标坐标系建立模块,用于当电视应用程序在屏幕上加载完成后,将所述屏幕上的所有按钮转换为光标节点,所述光标节点按照二维直角坐标系排列,并将所述光标节点添加到对应的集合中;\n[0046] 光标控制模块,用于通过所述电视应用程序的光标管理器监听遥控器的按键操作,以控制光标在所述光标节点上的移动和/或展现。\n[0047] 根据本发明所述的光标控制系统,所述屏幕上所有的所述光标节点组成的集合为根节点;\n[0048] 所述屏幕上部分的所述光标节点组成的集合为子节点;\n[0049] 所述根节点和所述子节点形成父子层级关系,每个所述子节点构成子坐标系,并且不同的所述子节点可组成新的子节点。\n[0050] 根据本发明所述的光标控制系统,所述光标节点设有状态属性,所述状态属性包括无效状态和有效状态;\n[0051] 所述光标坐标系建立模块还包括:\n[0052] 过滤子模块,用于过滤掉无效状态的所述光标节点,重新建立所述子坐标系;或者[0053] 替换子模块,用于当所述屏幕的内容发生更新时,通过新的光标节点来替换失效的光标节点,重新建立所述子坐标系。\n[0054] 根据本发明所述的光标控制系统,当所述光标移至所述光标节点时为亮起状态,当所述光标离开所述光标节点时为消失状态;\n[0055] 所述光标控制系统还包括设置模块,所述设置模块包括:\n[0056] 第一设置子模块,用于为所述亮起状态设置第一自定义操作;和/或\n[0057] 第二设置子模块,用于为所述消失状态设置第二自定义操作;\n[0058] 所述光标控制模块还包括:\n[0059] 第一执行子模块,用于当所述光标节点为所述亮起状态时,所述电视机应用程序执行所述第一自定义操作;和/或\n[0060] 第二执行子模块,用于当所述光标节点为所述消失状态时,所述电视机应用程序执行所述第二自定义操作。\n[0061] 根据本发明所述的光标控制系统,还包括设置模块,所述设置模块包括:\n[0062] 第三设置子模块,用于为所述遥控器的确认键操作设置第三自定义操作;\n[0063] 所述光标控制模块还包括:\n[0064] 第三执行子模块,用于当所述光标管理器监听到所述遥控器的确认键操作时,所述电视机应用程序执行所述第三自定义操作。\n[0065] 根据本发明所述的光标控制系统,还包括设置模块,所述设置模块包括:\n[0066] 第四设置子模块,用于为所述集合的边界操作设置第四自定义操作,所述边界操作包括进入集合操作、到达左边界操作、到达右边界操作、到达下边界操作、到达上边界操作和/或离开集合操作;\n[0067] 所述光标控制模块还包括:\n[0068] 第四执行子模块,用于当所述光标管理器监听到所述边界操作时,所述电视机应用程序执行所述第四自定义操作。\n[0069] 根据本发明所述的光标控制系统,所述光标移至某个所述光标节点时,所述某个光标节点经高亮处理后成为高亮节点;\n[0070] 所述光标控制模块还包括:\n[0071] 移动子模块,用于当所述光标管理器监听到所述遥控器的方向按键操作后,根据当前高亮节点的位置以及所述方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个所述光标节点进行高亮处理。\n[0072] 根据本发明所述的光标控制系统,所述移动子模块还用于在所述屏幕加载完成后,所述光标管理器初始化一个默认亮起的默认高亮节点;以及当所述光标管理器监听到所述遥控器的方向按键操作后,根据所述默认高亮节点的位置以及所述方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个所述光标节点进行高亮处理。\n[0073] 根据本发明所述的光标控制系统,所述光标节点设有状态属性,所述状态属性包括无效状态和有效状态;\n[0074] 所述移动子模块还用于若根据所述当前高亮节点的位置以及方向按键操作对应的坐标偏移量,找到对应的下一个光标节点为无效状态,则所述光标管理器继续查找下一个光标节点,直到找到有效状态的所述光标节点或到达所述集合的边界;或者[0075] 所述移动子模块还用于通过所述光标管理器根据所述电视机应用程序的指定坐标位置或指定坐标信息来查找指定光标节点。\n[0076] 根据本发明所述的光标控制系统,所述移动子模块还用于当所述高亮节点位于所述集合边界时,若所述光标管理器监听到所述遥控器的方向按键操作,则判断所述集合之外是否存在其他集合;若存在所述其他集合,则将所述光标移至所述其他集合;若不存在所述其他集合,则所述光标停止不动。\n[0077] 本发明提供电视应用程序中光标移动和展现的控制技术,将屏幕上的所有按钮转换为光标节点,光标节点按照二维直角坐标系排列,并将光标节点添加到对应的集合中,可用集合的方式实现光标区域的嵌套和父子层级绑定;并通过电视应用程序的光标管理器监听遥控器的按键操作,以控制光标在光标节点上的移动和/或展现。借此,本发明使得光标的控制和展现更为灵活,优选提供众多接口留给应用程序操作,使得应用程序的开发变得更简便,可能实现丰富的展示效果。\n附图说明\n[0078] 图1是本发明基于电视应用程序的光标控制方法的流程图;\n[0079] 图2是本发明实施例中电视应用程序布局示意图;\n[0080] 图3是本发明实施例中用二维坐标系标记导航栏各个按钮的位置的示意图;\n[0081] 图4是本发明实施例中全局坐标系示意图;\n[0082] 图5是本发明实施例中集合的边界与跳入跳出的示意图;\n[0083] 图6是本发明实施例中节点的状态控制和位移传递的示意图;\n[0084] 图7是本发明实施例中死节点的过滤的示意图;\n[0085] 图8是本发明基于电视应用程序的光标控制系统的结构示意图;\n[0086] 图9是本发明优选基于电视应用程序的光标控制系统的结构示意图。\n具体实施方式\n[0087] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。\n[0088] 图1是本发明基于电视应用程序的光标控制方法的流程图,包括步骤有:\n[0089] 步骤S101,光标坐标系建立步骤,当电视应用程序在屏幕上加载完成后,将屏幕上的所有按钮转换为光标节点,光标节点按照二维直角坐标系排列,并将光标节点添加到对应的集合中。所述电视应用程序优选为互联网电视的应用程序。\n[0090] 优选的是,屏幕上所有的光标节点组成的集合为根节点。屏幕上部分的光标节点组成的集合为子节点。根节点和子节点形成父子层级关系,每个子节点构成子坐标系,并且不同的子节点可组成新的子节点。\n[0091] 更好的是,光标节点设有状态属性,状态属性包括无效状态和有效状态。\n[0092] 所述光标坐标系建立步骤还包括:\n[0093] 过滤掉无效状态的光标节点,重新建立子坐标系;或者\n[0094] 当屏幕的内容发生更新时,通过新的光标节点来替换失效的光标节点,重新建立子坐标系。\n[0095] 步骤S102,光标控制步骤,通过电视应用程序的光标管理器监听遥控器的按键操作,以控制光标在光标节点上的移动和/或展现。\n[0096] 当光标移至光标节点时为亮起状态,当光标离开光标节点时为消失状态。\n[0097] 优选的是,所述光标控制方法还包括:\n[0098] 为亮起状态和/或消失状态设置第一自定义操作和/或第二自定义操作。\n[0099] 所述光标控制步骤还包括:\n[0100] 当光标节点为亮起状态时,电视机应用程序执行第一自定义操作;和/或[0101] 当光标节点为消失状态时,电视机应用程序执行第二自定义操作。\n[0102] 较好的是,所述光标控制步骤还包括:\n[0103] 为遥控器的确认键操作设置第三自定义操作。\n[0104] 所述光标控制步骤还包括:\n[0105] 当光标管理器监听到遥控器的确认键操作时,电视机应用程序执行第三自定义操作。\n[0106] 更好的是,所述光标控制步骤还包括:\n[0107] 为集合的边界操作设置第四自定义操作,边界操作包括进入集合操作、到达左边界操作、到达右边界操作、到达下边界操作、到达上边界操作和/或离开集合操作。\n[0108] 所述光标控制步骤还包括:\n[0109] 当光标管理器监听到边界操作时,电视机应用程序执行第四自定义操作。\n[0110] 优选的是,光标移至某个光标节点时,某个光标节点经高亮处理后成为高亮节点。\n[0111] 所述光标控制步骤还包括:\n[0112] 当光标管理器监听到遥控器的方向按键操作后,根据当前高亮节点的位置以及方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个光标节点进行高亮处理。\n[0113] 更好的是,在屏幕加载完成后,光标管理器初始化一个默认亮起的默认高亮节点。\n[0114] 当光标管理器监听到遥控器的方向按键操作后,根据默认高亮节点的位置以及方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个光标节点进行高亮处理。\n[0115] 优选的是,光标节点设有状态属性,状态属性包括无效状态和有效状态。\n[0116] 所述光标控制步骤还包括:\n[0117] 若根据当前高亮节点的位置以及方向按键操作对应的坐标偏移量,找到对应的下一个光标节点为无效状态,则光标管理器继续查找下一个光标节点,直到找到有效状态的光标节点或到达集合的边界;或者\n[0118] 所述光标控制步骤还包括:\n[0119] 光标管理器根据电视机应用程序的指定坐标位置或指定坐标信息来查找指定光标节点。\n[0120] 优选的是,光标控制步骤还包括:\n[0121] 当高亮节点位于集合边界时,若光标管理器监听到遥控器的方向按键操作,则判断集合之外是否存在其他集合。\n[0122] 若存在其他集合,则将光标移至其他集合。\n[0123] 若不存在其他集合,则光标停止不动。\n[0124] 本发明涉及一种对互联网电视应用程序中光标移动和展现的控制方法。包括将按钮转化为光标节点对象,利用二维直角坐标系来排列和管理光标节点。用集合的方式实现光标区域的嵌套和父子层级绑定。以及利用光标管理器来监听遥控器按键,从高亮节点中根据偏移量移动光标到达指定位置,在光标亮起或消失、光标跳入/跳出集合边界时,发出消息通知应用程序做出相应操作。本发明尤其适用于高清机顶盒的电视应用程序中光标移动和展现方法,即灵活有效的光标管理方法,以解决电视应用程序中各种特效下的光标移动和展现。\n[0125] 一、系统描述:本发明主要由光标节点和光标管理器组成。所述光标节点是指按钮在应用程序中的存在和表现。屏幕中有多少个按钮,在应用程序中就有多少个光标节点对象。所有光标节点按照二维直角坐标系排列,光标节点的属性x表示横向坐标值,属性y表示纵向坐标值。所有在同一坐标系中的光标节点组成一个光标集合(后面简称集合)。而集合又可同其他集合或光标节点组成新的坐标系。换言之,集合是一种可嵌套的光标节点。\n[0126] 二、光标坐标系的建立:例如一个典型的电视应用程序布局,顶部是5个横向排列的导航按钮下面是一个2行4列的影片按钮(图2所示)。针对所有的导航按钮,可建立一个子坐标系A,该子坐标系A包括导航按钮1~5五个光标节点,坐标值为A(0,0)~A(4,0)。将子坐标系A中的所有光标节点组成导航集合(图3所示)。同理所有的影片按钮也可建立一个子坐标系B,影片1至影片8的坐标值为B(0,0)~B(3,1),组成影片集合。至此,整个屏幕所有光标节点组成的集合可称之为根节点(root_node),根节点下面有两个子节点:导航集合(0,0)和影片集合(0,1)(图4所示)。如此一来便形成了父子层级关系,最顶层的光标节点就是根节点,根据给出的坐标值,沿着根节点向下寻找,总能找到对应的子节点。\n[0127] 三、光标管理器:用于从系统底层接收遥控器的按键信息,进入光标坐标系开始搜寻光标节点,找到对应的光标节点再将该光标节点亮起,(亮起的光标节点称作高亮节点)。\n在屏幕加载完成后,光标管理器会初始化一默认亮起的光标节点,当接收到遥控器的“上/下/左/右”按键后,就根据高亮节点的位置,加上坐标偏移量,寻找下一个高亮节点,控制光标移动。方向按键对应的坐标偏移量分别为:上(0,-1),下(0,+1),左(-1,0),右(+1,0)。光标管理器除了可按照偏移量来搜寻之外,还可由应用程序直接指定坐标位置的方式来搜寻。监听遥控器“确定”按键,并触发高亮节点(node)的ok方法。\n[0128] 四、集合的处理:光标的移动是基于高亮节点的位置加上坐标偏移量来实现的。但高亮节点是存在在集合的子坐标系之中的。而一个集合的大小有限,经常会到达边界。例如(图5所示)高亮节点在导航集合的A(0,0)位置,如果遥控器按“下”,偏移量为(0,+1),那么下一个位置为A(0+0,0+1)。但是在导航集合内没有坐标值为A(0,1)的光标节点。这时候,光标管理器就需要到上一级坐标系中根据高亮节点的父节点来搜寻。即需要在根节点的坐标系中,根据导航集合(0,0)加上偏移量,找到影片集合(0,1)。再进入集合找到第一个子节点影片1也就是B(0,0)完成搜索。实际上找到的光标节点是高亮节点叔叔辈的子节点。\n[0129] 五、特殊功能和接口\n[0130] 1、应用自定义光标展现:上面说到过,当光标移动到某些按钮上时,需要展现出特殊效果,例如光标移至时,按钮变大。光标移走时按钮变小。又或是移至时发光,移走时恢复正常。每个光标节点都有两个方法暴露给应用程序:on(亮起)和lost(消失)。默认情况下这两个方法是空的,就是使用系统默认的光标框。当这两个方法被应用程序重新定义之后,光标节点亮起时就调用on方法来使用自定义的展现方式。消失时同理调用lost方法。每个光标节点还有一个ok方法,其作用是当按下遥控器“确定”键时,应用程序可自定义一个操作(如显示/隐藏某个区域),而不是默认的点击按钮。\n[0131] 2、集合边界的处理:当高亮节点位于集合最边沿时,再向外移动就会跳出集合边界,这时候,如果边界外面还有其他集合,则进入其他集合继续搜索光标节点,如果边界外面没有其他集合了,就是移不动了。所以光标管理器会监控集合的边界,当发生(进入集合,到达左边界,到达右边界,到达下边界,到达上边界,离开集合)操作时,会通知应用程序来作出相应操作。例如前面举例说到的(图5所示),高亮节点在导航集合的A(0,0)位置,如果遥控器按“下”到达B(0,0),光标管理器在此过程中会监控到导航集合的“到达下边界”,“离开集合”操作,以及影片集合的“进入集合”操作。\n[0132] 3、集合的缓存:集合有一个缓存开关,打开缓存开关后,当光标跳出集合时,集合会记录原高亮节点的坐标值。当下一个操作光标又调回,光标管理器会搜寻集合缓存的光标节点并亮起。\n[0133] 4、节点状态的处理:每个光标节点都有状态属性,应用程序可修改任意光标节点的状态,有时根据坐标偏移量找到下一个高亮节点时,正好该光标节点的状态是不可用。光标管理器会根据坐标偏移量继续寻找下一个光标节点,直到找到可用的或者到达边界。这种寻找方法叫做位移传递(图6所示)。\n[0134] 5、死节点过滤:有时通过位移传递也无法找到下一个高亮节点,但是子坐标系中确实还存在可用光标节点时,就需要过滤掉不可用的光标节点。重新建立子坐标系。此操作叫做死节点过滤,应用程序可在需要的时候调用集合的死节点过滤方法(图7所示)。\n[0135] 6、节点替换:屏幕上有内容刷新,或是局部更新时,原始的坐标系就会失效。此时可通过集合的光标节点替换接口,用新的光标节点来替换失效的光标节点。替换的时候需指定替换光标节点的坐标值(图7所示)。\n[0136] 本发明通过将按钮转化为光标节点的方式,以二维直角坐标系为基础来控制光标的移动。使得光标的控制和展现更为灵活,并且有众多接口留给应用程序操作,使得应用的开发变的更简便。利用边界、缓存等特性的组合,能实现丰富的展示效果,如平滑翻页、滚动、瀑布流、标签页、弹出层等。\n[0137] 具体实施方式:光标节点,其实是一个程序对象,该对象至少拥有的属性如下:\n[0138]\nX 光标节点在坐标系中x轴的位置\nY 光标节点在坐标系中y轴的位置\nstatus 光标节点的状态,0表示无效,1表示有效\nparent 光标节点的父节点\n[0139] 光标节点,至少拥有的方法如下:\n[0140]\n[0141] 节点集合,除了拥有普通节点的属性和方法外,还拥有如下属性:\n[0142]\n[0143] 节点集合,除了拥有光标节点的属性和方法外,还拥有如下方法:\n[0144]\n[0145] 光标管理器,是程序内一个单例对象(唯一的),该对象至少拥有的属性有:\n[0146]\nnode 高亮节点\n[0147] 光标管理器的方法有:\n[0148]\n[0149]\n[0150] 电视机应用程序使用过程如下:\n[0151] 1、应用程序要在屏幕加载完毕,所有按钮都已展示就位时,根据布局建立光标节点。并添加至对应集合中。\n[0152] 2、有自定义光标样式的节点,需要监听on接口和lost接口以及ok接口。需要利用集合边界实现特殊展示的集合,需要监听相应的边界操作。\n[0153] 3、初始化光标管理器,实现其根据坐标系的搜索方式。并设定好默认的光标框,亮起默认节点。\n[0154] 4、光标管理器开始监听遥控器按键,并做出反应。\n[0155] 图8是本发明基于电视应用程序的光标控制系统的结构示意图,所述光标控制系统100应用于电视应用程序中,所述电视应用程序应用于电视机、机顶盒、通信终端等中,所述光标控制系统100包括有光标坐标系建立模块10和光标控制模块20,其中:\n[0156] 光标坐标系建立模块10,用于当电视应用程序在屏幕上加载完成后,将屏幕上的所有按钮转换为光标节点,光标节点按照二维直角坐标系排列,并将光标节点添加到对应的集合中。优选的是,屏幕上所有的光标节点组成的集合为根节点;屏幕上部分的光标节点组成的集合为子节点。;根节点和子节点形成父子层级关系,每个子节点构成子坐标系,并且不同的子节点可组成新的子节点。\n[0157] 光标控制模块20,用于通过电视应用程序的光标管理器监听遥控器的按键操作,以控制光标在光标节点上的移动和/或展现。\n[0158] 图9是本发明优选基于电视应用程序的光标控制系统的结构示意图,所述光标控制系统100应用于电视应用程序中,所述电视应用程序应用于电视机、机顶盒、通信终端等中,所述光标控制系统100包括有光标坐标系建立模块10、光标控制模块20和/或设置模块\n30,其中:\n[0159] 光标坐标系建立模块10,用于当电视应用程序在屏幕上加载完成后,将屏幕上的所有按钮转换为光标节点,光标节点按照二维直角坐标系排列,并将光标节点添加到对应的集合中。优选的是,屏幕上所有的光标节点组成的集合为根节点;屏幕上部分的光标节点组成的集合为子节点。;根节点和子节点形成父子层级关系,每个子节点构成子坐标系,并且不同的子节点可组成新的子节点。光标节点设有状态属性,状态属性包括无效状态和有效状态。\n[0160] 所述光标坐标系建立模块10还包括:\n[0161] 过滤子模块11,用于过滤掉无效状态的光标节点,重新建立子坐标系。或者[0162] 替换子模块12,用于当屏幕的内容发生更新时,通过新的光标节点来替换失效的光标节点,重新建立子坐标系。\n[0163] 当光标移至光标节点时为亮起状态,当光标离开光标节点时为消失状态。\n[0164] 光标控制模块20,用于通过电视应用程序的光标管理器监听遥控器的按键操作,以控制光标在光标节点上的移动和/或展现。\n[0165] 所述设置模块30包括:\n[0166] 第一设置子模块31,用于为亮起状态设置第一自定义操作;\n[0167] 第二设置子模块32,用于为消失状态设置第二自定义操作;\n[0168] 第三设置子模块33,用于为遥控器的确认键操作设置第三自定义操作;和/或[0169] 第四设置子模块34,用于为集合的边界操作设置第四自定义操作,边界操作包括进入集合操作、到达左边界操作、到达右边界操作、到达下边界操作、到达上边界操作和/或离开集合操作。\n[0170] 光标控制模块20还包括:\n[0171] 第一执行子模块21,用于当光标节点为亮起状态时,电视机应用程序执行第一自定义操作;\n[0172] 第二执行子模块22,用于当光标节点为消失状态时,电视机应用程序执行第二自定义操作;\n[0173] 第三执行子模块23,用于当光标管理器监听到遥控器的确认键操作时,电视机应用程序执行第三自定义操作;和/或\n[0174] 第四执行子模块24,用于当光标管理器监听到边界操作时,电视机应用程序执行第四自定义操作。\n[0175] 优选的是,光标移至某个光标节点时,某个光标节点经高亮处理后成为高亮节点。\n[0176] 所述光标控制模块20还包括:\n[0177] 移动子模块25,用于当光标管理器监听到遥控器的方向按键操作后,根据当前高亮节点的位置以及方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个光标节点进行高亮处理。\n[0178] 优选的是,移动子模块25还用于在屏幕加载完成后,光标管理器初始化一个默认亮起的默认高亮节点。以及当光标管理器监听到遥控器的方向按键操作后,根据默认高亮节点的位置以及方向按键操作对应的坐标偏移量,找到对应的下一个光标节点,并将下一个光标节点进行高亮处理。\n[0179] 光标节点设有状态属性,状态属性包括无效状态和有效状态。\n[0180] 优选的是,移动子模块25,还用于若根据当前高亮节点的位置以及方向按键操作对应的坐标偏移量,找到对应的下一个光标节点为无效状态,则光标管理器继续查找下一个光标节点,直到找到有效状态的光标节点或到达集合的边界。或者\n[0181] 移动子模块25,还用于通过光标管理器根据电视机应用程序的指定坐标位置或指定坐标信息来查找指定光标节点。\n[0182] 更好的是,移动子模块25还用于当高亮节点位于集合边界时,若光标管理器监听到遥控器的方向按键操作,则判断集合之外是否存在其他集合。若存在其他集合,则将光标移至其他集合。若不存在其他集合,则光标停止不动。\n[0183] 综上所述,本发明提供电视应用程序中光标移动和展现的控制技术,将屏幕上的所有按钮转换为光标节点,光标节点按照二维直角坐标系排列,并将光标节点添加到对应的集合中,可用集合的方式实现光标区域的嵌套和父子层级绑定;并通过电视应用程序的光标管理器监听遥控器的按键操作,以控制光标在光标节点上的移动和/或展现。借此,本发明使得光标的控制和展现更为灵活,优选提供众多接口留给应用程序操作,使得应用程序的开发变得更简便,可能实现丰富的展示效果。\n[0184] 当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
法律信息
- 2018-01-16
- 2015-08-05
实质审查的生效
IPC(主分类): H04N 21/422
专利申请号: 201510136746.X
申请日: 2015.03.26
- 2015-07-08
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2013-04-03
|
2012-11-21
| | |
2
| |
2007-06-06
|
2006-12-29
| | |
3
| |
2011-04-20
|
2009-04-20
| | |
4
| |
2015-02-04
|
2013-07-22
| | |
5
| |
2007-03-28
|
2005-09-23
| | |
6
| |
2014-03-26
|
2013-12-13
| | |
7
| |
2014-04-16
|
2013-11-29
| | |
8
| |
2007-03-14
|
2006-09-26
| | |
9
| |
2014-08-13
|
2014-05-27
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |