一种多层次按键识别方法技术

技术编号:15762595 阅读:81 留言:0更新日期:2017-07-05 22:13
本发明专利技术涉及一种多层次按键识别方法,包括:捕捉用户点击动作的信息;将按键链表头结点连接的主界面作为当前主界面;将主界面的第一个子界面作为当前子界面;对当前子界面进行扫描,将该子界面的按键的坐标信息与位置信息与点击动作的坐标信息与位置信息进行比较,确定点击动作是否按下当前子界面的按键,如果是,执行该按键的操作函数,否则,判断当前子界面是否是当前主界面的最后一个子界面,如果是,执行下一步,否则,将当前子界面右连接的子界面作为当前子界面,然后重新扫描当前子界面;判断当前主界面是否是整个链表中的最后一个主界面,如果是,按键识别失败,否则,将当前主界面右连接的主界面作为当前主界面,然后重新扫描当前主界面。

A multi-level keystroke identification method

The invention relates to a multi level key recognition method, including: capture the user click action information; the main interface key chain header node connection as the main interface; the first sub interface main interface as the interface; the sub interface scan, the sub interface key coordinate information and location click the action information and coordinate information and location information, to determine whether the current sub interface press click action button, if it is, or perform the operation function, the key, to determine whether the current sub interface is when the last sub interface, the main interface before if yes, otherwise the next step, the current. The sub right of the interface connection interface as the interface, and then re scan the current interface; determine the current main interface of the list is the last one The main interface, if it is, fails to recognize the key, otherwise the main interface to the current main interface is the current main interface, and then re scans the current main interface.

【技术实现步骤摘要】
一种多层次按键识别方法
本专利技术涉及UI界面设计,特别涉及一种多层次按键识别方法。
技术介绍
一般的人机交互产品中,UI界面都是多层次的设计风格。在多层次的UI界面中,不同层次的按键可能会存在坐标重合的现象。在这一场景下,当用户点击某一坐标时,需要识别哪一层的按键被点击,这就是所谓的多层次按键识别。在现有技术中,用于实现多层次按键识别的常用方法是定义多个变量,实现多层次的逻辑。例如,在需要多层次按键识别的页面上增加一个按键操作,在按键扫描函数里增加一个判断,在按键操作函数里增加一个调用函数。这种方法从逻辑上比较繁杂,且不容易扩展。
技术实现思路
本专利技术的目的在于克服已有的多层次按键识别方法逻辑繁杂,不容易扩展的缺陷,从而提供一种易扩展的多层次按键识别方法。为了实现上述目的,本专利技术提供了一种多层次按键识别方法,该方法所识别的按键具有如下数据结构:按键的坐标,包括按键的x轴起始坐标、y轴起始坐标;按键的半径;按键的位置,用来描述按键从属的页面;按键的上一层连接,用于描述按键所在节点在按键链表中的上一层连接;主界面与该主界面的子界面之间具有上下层的关系;按键的下一层连接,用于描述按键所在节点在按键链表中的下一层连接;按键的左连接,用于描述按键所在节点在按键链表中的左连接;主界面之间、同一主界面中的各个子界面之间存在平行关系,具有平行关系的主界面或子界面之间分左、右连接;按键的右连接,用于描述按键所在节点在按键链表中的右连接;按键名称,用于定义按键名称;按键操作函数指针,用于描述点击按键后需要执行的操作;该方法包括:步骤1)、捕捉用户点击动作的信息,所述点击动作的信息至少包括点击动作的坐标信息以及用于描述点击动作发生界面的位置信息;步骤2)、从按键链表的头结点开始扫描主界面,将头结点连接的主界面作为当前主界面;步骤3)、对当前主界面进行扫描,将所扫描的主界面的第一个子界面作为当前子界面;步骤4)、对当前子界面进行扫描,在扫描时,将该子界面所包含的按键的坐标信息与位置信息与所述点击动作的坐标信息与位置信息分别进行比较,确定该点击动作是否按下了当前子界面所包含的按键,如果是,执行该按键所对应的操作函数,如果不是,执行下一步;步骤5)、判断当前子界面是否是当前主界面的最后一个子界面,如果是,执行下一步,否则,将当前子界面右连接的子界面作为当前子界面,然后重新执行步骤4);步骤6)、判断当前主界面是否是整个链表中的最后一个主界面,如果是,按键识别失败,否则,将当前主界面右连接的主界面作为当前主界面,然后重新执行步骤3)。本专利技术的优点在于:本专利技术的方法逻辑清晰且容易扩展,极大地提升了工作效率。附图说明图1是按键链表的示意图;图2是本专利技术的多层次按键识别方法的流程图。具体实施方式现结合附图对本专利技术作进一步的描述。在对本专利技术的方法做详细说明之前,首先对按键的数据结构加以说明。一按键的数据结构包括:1、按键的坐标,具体包括按键的x轴起始坐标、y轴起始坐标。目前只定义矩形和圆形按键。当圆形按键时,x轴起始坐标相等,y轴起始坐标相等。2、按键的半径。当按键为矩形时,按键半径为0;按键为圆形时,半径不为0。3、按键的位置。按键的位置主要用来描述按键从属的页面,由此可区分位置重合、但从属于不同页面的按键。4、按键的上一层连接。用于描述按键所在节点在按键链表中的上一层连接。主界面与该主界面的子界面之间具有上下层的关系,例如,在图1中,主界面1是子界面1的上一层。5、按键的下一层连接。用于描述按键所在节点在按键链表中的下一层连接。例如,在图1中,子界面1是主界面1的下一层。6、按键的左连接。用于描述按键所在节点在按键链表中的左连接。主界面之间、同一主界面中的各个子界面之间存在平行关系,具有平行关系的主界面或子界面之间分左、右连接。例如,在图1中,主界面1是主界面2的左连接。7、按键的右连接。用于描述按键所在节点在按键链表中的右连接。例如,在图1中,主界面2是主界面1的右连接。8、按键名称。用于定义按键名称。9、按键操作函数指针。用于描述点击按键后需要执行的操作。10、按键识别函数指针。识别按键被按下需要执行的函数。结合图1和图2,本专利技术的多层次按键识别方法包括:步骤1)、捕捉用户点击动作的信息,所述点击动作的信息至少包括点击动作的坐标信息以及位置信息(所述位置信息描述了点击动作发生的界面);步骤2)、从按键链表的Head(头)结点开始扫描主界面,将Head结点连接的主界面作为当前主界面;步骤3)、对当前主界面进行扫描,将所扫描的主界面的第一个子界面作为当前子界面;步骤4)、对当前子界面进行扫描,在扫描时,将该子界面所包含的按键的坐标信息与位置信息与所述点击动作的坐标信息与位置信息分别进行比较,确定该点击动作是否按下了当前子界面所包含的按键,如果是,执行该按键所对应的操作函数,如果不是,执行下一步;步骤5)、判断当前子界面是否是当前主界面的最后一个子界面,如果是,执行下一步,否则,将下一个子界面(即当前子界面右连接的子界面)作为当前子界面,然后重新执行步骤4);步骤6)、判断当前子界面是否是当前主界面的最后一个子界面,如果是,按键识别失败,否则,将下一个主界面(即当前主界面右连接的主界面)作为当前主界面,然后重新执行步骤3)。本专利技术以按键的坐标、所属的界面等作为属性,需要执行的操作作为方法,实现了按键的封装,逻辑清晰且容易扩展,解决了前述方法的不足。通过本专利技术的方法,在GUI界面程序很便捷的扩展按钮,要做的工作仅仅是分配一个按键变量,给按键属性赋值并实现一个按键要执行的操作方法。极大的提升了工作效率。最后所应说明的是,以上实施例仅用以说明本专利技术的技术方案而非限制。尽管参照实施例对本专利技术进行了详细说明,本领域的普通技术人员应当理解,对本专利技术的技术方案进行修改或者等同替换,都不脱离本专利技术技术方案的精神和范围,其均应涵盖在本专利技术的权利要求范围当中。本文档来自技高网...
一种多层次按键识别方法

【技术保护点】
一种多层次按键识别方法,该方法所识别的按键具有如下数据结构:按键的坐标,包括按键的x轴起始坐标、y轴起始坐标;按键的半径;按键的位置,用来描述按键从属的页面;按键的上一层连接,用于描述按键所在节点在按键链表中的上一层连接;主界面与该主界面的子界面之间具有上下层的关系;按键的下一层连接,用于描述按键所在节点在按键链表中的下一层连接;按键的左连接,用于描述按键所在节点在按键链表中的左连接;主界面之间、同一主界面中的各个子界面之间存在平行关系,具有平行关系的主界面或子界面之间分左、右连接;按键的右连接,用于描述按键所在节点在按键链表中的右连接;按键名称,用于定义按键名称;按键操作函数指针,用于描述点击按键后需要执行的操作;该方法包括:步骤1)、捕捉用户点击动作的信息,所述点击动作的信息至少包括点击动作的坐标信息以及用于描述点击动作发生界面的位置信息;步骤2)、从按键链表的头结点开始扫描主界面,将头结点连接的主界面作为当前主界面;步骤3)、对当前主界面进行扫描,将所扫描的主界面的第一个子界面作为当前子界面;步骤4)、对当前子界面进行扫描,在扫描时,将该子界面所包含的按键的坐标信息与位置信息与所述点击动作的坐标信息与位置信息分别进行比较,确定该点击动作是否按下了当前子界面所包含的按键,如果是,执行该按键所对应的操作函数,如果不是,执行下一步;步骤5)、判断当前子界面是否是当前主界面的最后一个子界面,如果是,执行下一步,否则,将当前子界面的下一个子界面作为当前子界面,然后重新执行步骤4);步骤6)、判断当前主界面是否是整个链表中的最后一个主界面,如果是,按键识别失败,否则,将当前主界面的下一个主界面作为当前主界面,然后重新执行步骤3)。...

【技术特征摘要】
1.一种多层次按键识别方法,该方法所识别的按键具有如下数据结构:按键的坐标,包括按键的x轴起始坐标、y轴起始坐标;按键的半径;按键的位置,用来描述按键从属的页面;按键的上一层连接,用于描述按键所在节点在按键链表中的上一层连接;主界面与该主界面的子界面之间具有上下层的关系;按键的下一层连接,用于描述按键所在节点在按键链表中的下一层连接;按键的左连接,用于描述按键所在节点在按键链表中的左连接;主界面之间、同一主界面中的各个子界面之间存在平行关系,具有平行关系的主界面或子界面之间分左、右连接;按键的右连接,用于描述按键所在节点在按键链表中的右连接;按键名称,用于定义按键名称;按键操作函数指针,用于描述点击按键后需要执行的操作;该方法包括:步骤1)、捕捉用户点击动作的信息,所述点击动作的信息至少包括点击动作的坐标信息以及用于...

【专利技术属性】
技术研发人员:宋恒利
申请(专利权)人:北京谊安医疗系统股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1