CN110704127B - 按钮控制方法、装置、电子设备和存储介质 - Google Patents
按钮控制方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN110704127B CN110704127B CN201910916476.2A CN201910916476A CN110704127B CN 110704127 B CN110704127 B CN 110704127B CN 201910916476 A CN201910916476 A CN 201910916476A CN 110704127 B CN110704127 B CN 110704127B
- Authority
- CN
- China
- Prior art keywords
- button
- event
- script
- preset
- empty
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提出一种按钮控制方法、装置、电子设备和存储介质,方法包括:获取当前界面中被点击位置的第一坐标值;判断被点击位置的第一坐标值是否与按钮对应的显示区域匹配;若匹配,则按照预设的规则,判断按钮是否为单次事件按钮;若是,则执行按钮对应的第一脚本,其中第一脚本中包括按钮对应的功能代码及用于移除功能代码的移除事件脚本。该方法在确定按钮为单次事件按钮后,通过在执行按钮对应的功能代码后,执行移除功能代码的移动事件脚本,以解除按钮与功能代码的绑定,当后续连续多次点击该按钮时,不会执行按钮的功能代码,不仅避免了按钮被连续多次点击时,多次加载数据,而且控制简单、方便,也不会使用户误认为发生了卡顿、或死机等。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种按钮控制方法、装置、电子设备和存储介质。
背景技术
在电子设备中按钮是常见的控件,按钮是支持多次连续点击的,但连续的点击,会导致事件被执行多次。若事件不支持多次执行,比如下载数据、连接网络等,如果连续多次点击按钮,会导致数据被多次加载,引起异常。
相关技术中,可采用关闭按钮交互属性的方法,具体地,按钮被点击后,将按钮的交互属性关闭,在第一次点击以后,按钮便处于无效不可点击的状态。但是,交互属性被关闭后,按钮就失去了可以被点击的功能,当后续再点击按钮时,用户不会收到反馈,可能会导致用户误认为发生了卡顿、或死机等,用户体验较差。
发明内容
本申请提出一种按钮控制方法、装置、电子设备和存储介质,用于解决现有通过关闭交互属性的按钮控制方法,存在控制效果差的问题。
本申请一方面实施例提出了一种按钮控制方法,包括:
获取当前界面中被点击位置的第一坐标值;
判断所述被点击位置的第一坐标值是否与按钮对应的显示区域匹配;
若匹配,则按照预设的规则,判断所述按钮是否为单次事件按钮;
若是,则执行所述按钮对应的第一脚本,其中所述第一脚本中包括所述按钮对应的功能代码及用于移除所述功能代码的移除事件脚本。
本申请实施例的按钮控制方法,通过首先获取当前界面中被点击位置的第一坐标值,判断被点击位置的第一坐标值是否与按钮对应的显示区域匹配,若匹配,则按照预设的规则,判断按钮是否为单次事件按钮,若是单次事件按钮,则执行按钮对应的第一脚本,其中第一脚本中包括按钮对应的功能代码及用于移除功能代码的移除事件脚本。由此,在确定按钮为单次事件按钮后,通过在执行按钮对应的功能代码后,执行移除功能代码的移动事件脚本,以解除按钮与功能代码的绑定,当后续连续多次点击该单次事件按钮时,不会执行按钮的功能代码,不仅避免了按钮被连续多次点击时,多次加载数据,而且控制简单、方便,也不会使用户误认为发生了卡顿、或死机等,提高了用户体验。
作为本申请一方面实施例一种可能的实现方式,所述按照预设的规则,判断所述按钮是否为单次事件按钮,包括:
根据预设的按钮列表中是否包含所述按钮,判断所述按钮是否为单次事件按钮。
作为本申请一方面实施例一种可能的实现方式,所述按照预设的规则,判断按钮是否为单次事件按钮,包括:
根据所述按钮对应的点击函数中第一预设事件是否为空,判断所述按钮是否为单次事件按钮。
作为本申请一方面实施例一种可能的实现方式,所述根据所述按钮对应的点击函数中第一预设事件是否为空,判断所述按钮是否为单次事件按钮之后,还包括:
若所述第一预设事件为空,则判断所述按钮对应的点击函数中第二预设事件是否为空;
若所述第二预设事件非空,则执行所述按钮对应的第二脚本,其中,所述第二脚本中包括所述按钮对应的功能代码。
作为本申请一方面实施例一种可能的实现方式,所述判断所述按钮对应的点击函数中第二预设事件是否为空之后,还包括:
若所述第二预设事件为空,则终止对当前点击事件的响应。
作为本申请一方面实施例一种可能的实现方式,所述执行所述按钮对应的第一脚本之后,还包括:
判断所述按钮是否为多次事件按钮;
若否,则终止对当前点击事件的响应。
本申请另一方面实施例提出了一种按钮控制装置,包括:
获取模块,用于获取当前界面中被点击位置的第一坐标值;
第一判断模块,用于判断所述被点击位置的第一坐标值是否与按钮对应的显示区域匹配;
第二判断模块,用于当第一坐标值与按钮对应的显示区域匹配时,按照预设的规则,判断所述按钮是否为单次事件按钮;
执行模块,用于当所述按钮为单次事件按钮时,执行所述按钮对应的第一脚本,其中所述第一脚本中包括所述按钮对应的功能代码及用于移除所述功能代码的移除事件脚本。
本申请实施例的按钮控制装置,通过获取当前界面中被点击位置的第一坐标值,判断被点击位置的第一坐标值是否与按钮对应的显示区域匹配,若匹配,则按照预设的规则,判断按钮是否为单次事件按钮,若是单次事件按钮,则执行按钮对应的第一脚本,其中第一脚本中包括按钮对应的功能代码及用于移除功能代码的移除事件脚本。由此,在确定按钮为单次事件按钮后,通过在执行按钮对应的功能代码后,执行移除功能代码的移动事件脚本,以解除按钮与功能代码的绑定,当后续连续多次点击该单次事件按钮时,不会执行按钮的功能代码,不仅避免了按钮被连续多次点击时,多次加载数据,而且控制简单、方便,不会使用户误认为发生了卡顿、或死机等,提高了用户体验。
作为本申请另一方面实施例一种可能的实现方式,所述第二判断模块,具体用于:
根据预设的按钮列表中是否包含所述按钮,判断所述按钮是否为单次事件按钮。
作为本申请另一方面实施例一种可能的实现方式,所述第二判断模块,具体用于:
根据所述按钮对应的点击函数中第一预设事件是否为空,判断所述按钮是否为单次事件按钮。
作为本申请另一方面实施例一种可能的实现方式,该装置还包括:
第三判断模块,用于当所述第一预设事件为空时,判断所述按钮对应的点击函数中第二预设事件是否为空;
所述执行模块,还用于当所述第二预设事件非空时,执行所述按钮对应的第二脚本,其中,所述第二脚本中包括所述按钮对应的功能代码。
作为本申请另一方面实施例一种可能的实现方式,所述执行模块还用于:
当所述第二预设事件为空时,终止对当前点击事件的响应。
作为本申请另一方面实施例一种可能的实现方式,
所述第二判断模块,还用于判断所述按钮是否为多次事件按钮;
所述执行模块,还用于当所述按钮不是多次事件按钮时,终止对当前点击事件的响应。
本申请另一方面实施例提出了一种电子设备,包括:处理器和存储器;
其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如上述一方面实施例所述的按钮控制方法。
本申请另一方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述一方面实施例所述的按钮控制方法。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例提供的一种按钮控制方法的流程示意图;
图2为本申请实施例提供的另一种按钮控制方法的流程示意图;
图3为本申请实施例提供的另一种按钮控制方法的流程示意图;
图4为本申请实施例提供的一种按钮控制装置的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的按钮控制方法、装置、电子设备和存储介质。
本申请实施例,针对相关技术中通过关闭按钮的交互属性,避免不支持多次执行的事件对应按钮被连续多次点击,导致数据被多次加载的方法,存在控制效果差,导致用户误认为卡顿或死机等问题,提出一种按钮控制方法。
本申请实施例的按钮控制方法,通过确定按钮为单次事件按钮,在执行按钮对应的功能代码后,执行移除功能代码的移动事件脚本,以解除按钮与功能代码的绑定,当后续连续多次点击该单次事件按钮时,不会执行按钮的功能代码,以避免了按钮被连续多次点击时,多次加载数据。
图1为本申请实施例提供的一种按钮控制方法的流程示意图。
如图1所示,该按钮控制方法包括:
本申请实施例的按钮控制方法,可由本申请实施例提供的按钮控制装置执行,该装置可配置于电子设备中,如手机、平板电脑、计算机等具有按钮控件的设备上。
步骤101,获取当前界面中被点击位置的第一坐标值。
本实施例中,电子设备的当前界面中包含按钮,其中,按钮的数量可以是一个,也可以是多个。电子设备实时检测用户对当前界面的点击操作,当检测到用户的点击操作时,获取点击操作的位置的坐标,也即当前界面中被点击位置的坐标值,称为第一坐标值。其中,第一坐标值为被点击位置在当前界面所在的平面内的坐标值。
步骤102,判断被点击位置的第一坐标值是否与按钮对应的显示区域匹配。
本实施例中,将按钮的整个可视区域作为显示区域,预先存储按钮在界面上的显示区域的位置信息,其中,位置信息可以是坐标范围,用于指示按钮的显示区域在界面上的范围。
在获取被点击位置的第一坐标值后,根据第一坐标值和按钮对应的显示区域的位置信息,判断第一坐标值是否与按钮对应的显示区域匹配,以判断被点击位置是否位于按钮对应的显示区域内。
具体地,如果第一坐标值在按钮对应的显示区域的坐标范围内,说明被点击位置位于按钮对应的显示区域,第一坐标值与按钮对应的显示区域匹配,即用户点击了按钮。如果第一坐标不在按钮对应的显示区域的坐标范围内,说明被点击位置不在按钮对应的显示区域内,第一坐标值与按钮对应的显示区域不匹配,该按钮没被点击。
比如,第一坐标值(20,30),显示区域对应的坐标范围在横轴上的取值大于15且小于35,纵轴上的取值大于20且小于35,显然第一坐标值在该坐标范围内,即被点击位置位于该显示区域内,这里的坐标值可以是指像素点数。
步骤103,若第一坐标值与按钮对应的显示区域匹配,则按照预设的规则,判断按钮是否为单次事件按钮。
在实际应用中,按钮可以分为单次事件按钮和多次事件按钮。其中,单次事件按钮是指只允许执行一次事件的按钮,比如下载按钮、网络连接按钮等;多次事件按钮是指允许执行多次事件的按钮,比如游戏中,通过被点击的频次来加快主角移动的速度的按钮。
本实施例中,如果第一坐标值与按钮对应的显示区域匹配,说明用户对该按钮进行了点击操作,则按照预设的规则判断按钮是否为单次事件按钮,即判断按钮是否为只允许执行一次事件的按钮。
由于事件是单次事件还是多次事件是已知的,那么在开发阶段可以预先设定一个参数,根据设定的参数的取值,判断按钮是否为单次事件按钮。
步骤104,若按钮为单次事件按钮,则执行按钮对应的第一脚本。
本实施例中,每个单次事件按钮具有对应的第一脚本,该第一脚本包括按钮对应的功能代码和用于移除所述功能代码的移除事件脚本。其中,按钮对应的功能代码与事件对应,比如按钮被按下,视频开始播放或暂停等。
在执行完按钮对应的功能代码后,执行用于移除功能代码的移除事件脚本,解除单次事件按钮与事件的绑定,当按钮被连续多次点击时,由于按钮对应的功能代码被移除,那么连续多次点击按钮时只执行一次事件,从而对于只允许执行一次的事件,避免按钮连续多次被点击,导致多次加载事件的情况。
并且,本申请中通过执行单次事件按钮对应的第一脚本,便可达到避免按钮连续多次被点击,导致多次加载事件的目的,对按钮的控制简单、方便,也不需要关闭按钮的交互属性,不会使用户误认为发生了卡顿、或死机等。
需要说明的是,当当前界面再次被加载时,单次事件按钮仍然对应第一脚本,若单次事件按钮被点击,那么执行按钮对应的第一脚本,具体地,先执行按钮对应的功能代码,再执行用于移除功能代码的移除事件脚本,仍然可以在按钮被连续点击时,避免多次执行事件。
对于上述按照预设的规则,判断按钮是否为单次事件按钮,作为一种可能的实现方式,可根据预设的按钮列表中是否包含按钮,判断按钮是否为单次事件。比如,预设的按钮列表,可以是单次事件按钮列表,也可以是多次事件按钮列表。
具体地,可以为每个界面统一设置一个单次事件按钮列表,如果预设的单次事件按钮列表中包含当前被点击的按钮,那么该按钮为单次事件按钮。
或者,也可以为每个界面统一设置一个多次事件按钮列表,如果预设的多次事件按钮列表中不包含当前被点击的按钮,那么该按钮为单次事件按钮。
作为另一种可能的实现方式,也可以在每个按钮脚本内部设置与按钮类型相关的事件,根据事件判断是否为单次事件按钮,进而在确定按钮为单次事件按钮后,执行按钮对应的第一脚本。
本实施例中,可在按钮对应的脚本类中预先定义第一预设事件,第一预设事件用于指示与按钮绑定的事件为单次事件。其中,第一预设事件可以理解为一个函数,该函数中可调用按钮对应的功能代码,执行第一预设事件,即可执行按钮对应的功能代码,实现按钮的功能。
在点击函数中设置第一预设事件,以用第一预设事件指示与按钮绑定的事件为单次事件,由此通过点击函数中的第一预设事件,判断按钮是否为单次事件按钮。当第一预设事件非空时,说明与按钮绑定的事件为单次事件,确定按钮为单次事件按钮。
举例而言,当按钮被点击时,会执行按钮对应的点击函数Press()。其中,点击函数Press()中包含第一预设事件OnClickOnce,可根据OnClickOnce是否为空,确定按钮是否为单次事件按钮。当OnClickOnce非空时,确定按钮为单次事件按钮。
本申请实施例中,通过在点击函数中的第一预设事件,确定按钮是否为单次事件按钮,当第一预设事件非空时,确定按钮为单次事件按钮,从而实现了在执行点击函数的过程中,确定按钮是否为单次事件按钮。
上述实施例中,当第一预设事件为非空时,确定按钮为单次事件按钮,执行按钮对应的第一脚本,进一步地,第一预设事件也可能为空,还可在第一预设事件为空时,继续判断是否只执行按钮对应的功能,多次执行按钮绑定的事件。下面结合图2进行说明,图2为本申请实施例提供的另一种按钮控制方法的流程示意图。
步骤201,获取当前界面中被点击位置的第一坐标值。
步骤202,判断被点击位置的第一坐标值是否与按钮对应的显示区域匹配。
步骤203,若第一坐标值与按钮对应的显示区域匹配,则根据按钮对应的点击函数中第一预设事件是否为空,判断按钮是否为单次事件按钮。
本实施例中,步骤201-步骤203,与上述步骤101-步骤103类似,故在此不再赘述。
步骤204,若第一预设事件非空,则确定按钮为单次事件按钮。
本实施例中,当第一预设事件非空时,说明按钮要执行的事件只允许执行一次,即事件为单次事件,那么可以确定按钮为单次事件按钮。
步骤205,执行按钮对应的第一脚本。
在确定按钮为单次事件按钮后,执行按钮对应的第一脚本,具体地,在执行按钮的功能代码后,执行用于移除功能代码的移除事件脚本。
由于第一预设事件非空,说明第一预设事件调用按钮对应的功能代码,那么执行第一预设事件,也即执行按钮对应的功能代码,并在执行第一预设事件后,通过移除事件脚本将第一预设事件移除,即第一预设事件被设置为空,当按钮再被连续点击时,不会执行与按钮对应的功能代码,从而避免多次执行按钮对应的事件。
步骤206,若第一预设事件为空,则判断按钮对应的点击函数中第二预设事件是否为空。
本实施例中,在点击函数中设置第一预设事件和第二预设事件,其中,用第二预设事件指示与按钮绑定事件可多次被执行。其中,第二预设事件也可理解为一个函数,该函数也可调用按钮对应的功能代码。
本实施例中,第一预设事件为空,可能是因为第一预设事件被移除,使得按钮与事件绑定被解除,第一预设事件被设置为空,也可能是因为第一预设事件本身为空,那么可继续判断按钮对应的点击函数中第二预设事件是否为空。
比如,用OnClick表示第二预设事件,在确定第一预设事件OnClickOnce为空后,判断OnClick是否为空。
步骤207,若第二预设事件非空,则执行按钮对应的第二脚本。
本实施例中,如果第二预设事件非空,说明按钮与事件绑定,那么执行按钮对应的第二脚本,以执行按钮对应的事件,比如暂停播放等。其中,第二脚本中按钮对应的功能代码。
由于第二脚本中不包含用于移除功能代码的移除事件脚本,那么当再次点击按钮时,第二预设事件被未被移除,仍然是非空,那么会继续执行第二脚本。从而,实现了连续多次点击按钮时,连续多次执行事件,即多次加载数据。
在具体实现时,在按钮被点击后,会执行OnPointerClick方法,在OnPointerClick中,包含this.Press()函数,在执行this.Press()函数时,先判断OnClickOnce是否为空。如果OnClickOnce不为空,说明与按钮绑定的事件为单次事件,则执行按钮对应的功能代码,并在执行完功能代码后,执行用于移除功能代码的移除事件脚本,以将第一预设事件移除。
由于移除了按钮对应的功能代码,那么OnClickOnce为空,那么再次执行时,OnClickOnce为空,就不执行按钮对应的功能代码,所以连续多次点击按钮,不会多次执行按钮对应的事件。
如果确定OnClickOnce为空,继续向下执行,会执行到OnClick事件,如果OnClick不为空,则执行第二脚本代码。由于第二脚本中不包含用于移除功能代码的移除事件脚本,那么当再次点击按钮时,OnClick事件仍然是非空,可继续OnClick事件,由此OnClick事件支持重复执行。
进一步地,为了提高按钮控制的准确性,在本申请的一个实施例中,如果第二预设事件为空,则终止对当前点击事件的响应。
具体地,由于第二预设事件不为空的情况下,在执行完按钮对应的功能代码后,没有对第二预设事件进行移除,因此,若第二预设事件为空,说明与按钮绑定的事件为单次事件,且第一预设事件被移除。
因此,在确定第一预设事件为空,且第二预设事件也为空的情况下,电子设备终止对当前点击事件的响应。也就是说,当再次点击按钮时,不会收到相应的反馈。
本申请实施例中,在确定第一预设事件为空后,确定第二预设事件也为空,通过终止对当前点击事件的响应,以避免按钮被多次点击的情况下,进行多次响应,从而在用户多次点击按钮时,只执行一次事件,做出一次响应,进而提高了按钮控制的准确性。
在实际应用中,某些情况下,按钮可能既在一次事件中设置了,在多次事件中也设置了。因此,在执行完第一脚本后,还可继续判断按钮是否为多次事件按钮。下面结合图3进行说明,图3为本申请实施例提供的另一种按钮控制方法的流程示意图。
如图3所示,上述执行按钮对应的第一脚本之后,还包括:
步骤301,判断按钮是否为多次事件按钮。
本实施例中,可通过根据预设的按钮列表中是否包含按钮,判断按钮是否为多次事件按钮。
具体地,可以为每个界面统一设置一个多次事件按钮列表,如果预设的多次事件按钮列表中不包含当前被点击的按钮,那么该按钮不是多次事件按钮。
步骤302,若按钮不为多次事件按钮,则终止对当前点击事件的响应。
在确定按钮不是多次事件按钮,说明在按钮被连续点击的情况下,可以不进行多次响应,因此终止当前点击事件的响应。
可以理解的是,如果按钮为多次事件按钮,可执行按钮对应的第二脚本,可对点击事件进行响应。
本申请实施例中,在执行按钮对应的第一脚本之后,通过继续判断按钮是否为多次事件按钮,在确定不是多次事件按钮后,终止对当前点击事件的响应。从而在按钮被连续点击时,避免多次执行按钮对应的事件,多次加载数据,提高了对按钮的控制效果。
为了实现上述实施例,本申请实施例还提出一种按钮控制装置。图4为本申请实施例提供的一种按钮控制装置的结构示意图。
如图4所示,该按钮控制装置包括:获取模块410、第一判断模块420、第二判断模块430和执行模块440。
获取模块410,用于获取当前界面中被点击位置的第一坐标值;
第一判断模块420,用于判断被点击位置的第一坐标值是否与按钮对应的显示区域匹配;
第二判断模块430,用于当第一坐标值与按钮对应的显示区域匹配时,按照预设的规则,判断按钮是否为单次事件按钮;
执行模块440,用于当按钮为单次事件按钮时,执行按钮对应的第一脚本,其中第一脚本中包括按钮对应的功能代码及用于移除功能代码的移除事件脚本。
作为本申请实施例提出一种可能的实现方式,上述第二判断模块430,具体用于:
根据预设的按钮列表中是否包含按钮,判断按钮是否为单次事件按钮。
作为本申请实施例提出一种可能的实现方式,上述第二判断模块430,具体用于:
根据按钮对应的点击函数中第一预设事件是否为空,判断按钮是否为单次事件按钮。
作为本申请实施例提出一种可能的实现方式,该装置还包括:
第三判断模块,用于当第一预设事件为空时,判断按钮对应的点击函数中第二预设事件是否为空;
上述执行模块440,还用于当第二预设事件非空时,执行按钮对应的第二脚本,其中,第二脚本中包括所述按钮对应的功能代码。
作为本申请实施例提出一种可能的实现方式,上述执行模块440还用于:
当第二预设事件为空时,终止对当前点击事件的响应。
作为本申请实施例提出一种可能的实现方式,上述第二判断模块430,还用于判断按钮是否为多次事件按钮;
上述执行模块440,还用于当按钮不是多次事件按钮时,终止对当前点击事件的响应。
需要说明的是,前述对按钮控制方法实施例的解释说明,也适用于该实施例的按钮控制装置,故在此不再赘述。
本申请实施例的按钮控制装置,通过获取当前界面中被点击位置的第一坐标值,判断被点击位置的第一坐标值是否与按钮对应的显示区域匹配,若匹配,则按照预设的规则,判断按钮是否为单次事件按钮,若是单次事件按钮,则执行按钮对应的第一脚本,其中第一脚本中包括按钮对应的功能代码及用于移除功能代码的移除事件脚本。由此,在确定按钮为单次事件按钮后,通过在执行按钮对应的功能代码后,执行移除功能代码的移动事件脚本,以解除按钮与功能代码的绑定,当后续连续多次点击该单次事件按钮时,不会执行按钮的功能代码,不仅避免了按钮被连续多次点击时,多次加载数据,而且控制简单、方便,也不会使用户误认为发生了卡顿、或死机等。
为了实现上述实施例,本申请实施例还提出一种电子设备,包括:包括处理器和存储器;
其中,处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于实现如上述实施例所述的按钮控制方法。
为了实现上述实施例,本申请实施例还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述实施例所述的按钮控制方法。
在本说明书的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (10)
1.一种按钮控制方法,其特征在于,包括:
获取当前界面中被点击位置的第一坐标值;
根据所述第一坐标值和所述按钮对应的显示区域的坐标范围,判断所述被点击位置的第一坐标值是否与按钮对应的显示区域匹配;
若所述第一坐标值与所述按钮对应的显示区域的坐标范围匹配,则根据预设的按钮列表中是否包含所述按钮,或根据所述按钮对应的点击函数中第一预设事件是否为空,判断所述按钮是否为单次事件按钮;
若所述按钮是单次事件按钮,则执行所述按钮对应的第一脚本,其中所述第一脚本中包括所述按钮对应的功能代码及用于移除所述功能代码的移除事件脚本;
所述执行所述按钮对应的第一脚本之后,判断所述按钮是否为多次事件按钮;
若所述按钮是多次事件按钮,则执行所述按钮对应的第二脚本。
2.如权利要求1所述的方法,其特征在于,所述根据所述按钮对应的点击函数中第一预设事件是否为空,判断所述按钮是否为单次事件按钮之后,还包括:
若所述第一预设事件为空,则判断所述按钮对应的点击函数中第二预设事件是否为空;
若所述第二预设事件非空,则执行所述按钮对应的第二脚本,其中,所述第二脚本中包括所述按钮对应的功能代码。
3.如权利要求2所述的方法,其特征在于,所述判断所述按钮对应的点击函数中第二预设事件是否为空之后,还包括:
若所述第二预设事件为空,则终止对当前点击事件的响应。
4.如权利要求1-3任一所述的方法,其特征在于,
若所述按钮不是多次事件按钮,则终止对当前点击事件的响应。
5.一种按钮控制装置,其特征在于,包括:
获取模块,用于获取当前界面中被点击位置的第一坐标值;
第一判断模块,用于根据所述第一坐标值和所述按钮对应的显示区域的坐标范围,判断所述被点击位置的第一坐标值是否与按钮对应的显示区域匹配;
第二判断模块,用于所述第一坐标值与所述按钮对应的显示区域的坐标范围匹配,则根据预设的按钮列表中是否包含所述按钮,或根据所述按钮对应的点击函数中第一预设事件是否为空,判断所述按钮是否为单次事件按钮;
执行模块,用于若所述按钮是单次事件按钮,则执行所述按钮对应的第一脚本,其中所述第一脚本中包括所述按钮对应的功能代码及用于移除所述功能代码的移除事件脚本;
所述第二判断模块,还用于所述执行所述按钮对应的第一脚本之后,判断所述按钮是否为多次事件按钮;
所述执行模块,还用于若所述按钮是多次事件按钮,则终止对当前点击事件的响应。
6.如权利要求5所述的装置,其特征在于,还包括:
第三判断模块,用于当所述第一预设事件为空时,判断所述按钮对应的点击函数中第二预设事件是否为空;
所述执行模块,还用于当所述第二预设事件非空时,执行所述按钮对应的第二脚本,其中,所述第二脚本中包括所述按钮对应的功能代码。
7.如权利要求6所述的装置,其特征在于,所述执行模块还用于:
当所述第二预设事件为空时,终止对当前点击事件的响应。
8.如权利要求5-6任一所述的装置,其特征在于,所述执行模块,还用于若所述按钮不是多次事件按钮,则终止对当前点击事件的响应。
9.一种电子设备,其特征在于,包括处理器和存储器;
其中,所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于实现如权利要求1-4中任一所述的按钮控制方法。
10.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4中任一所述的按钮控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910916476.2A CN110704127B (zh) | 2019-09-26 | 2019-09-26 | 按钮控制方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910916476.2A CN110704127B (zh) | 2019-09-26 | 2019-09-26 | 按钮控制方法、装置、电子设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110704127A CN110704127A (zh) | 2020-01-17 |
CN110704127B true CN110704127B (zh) | 2023-09-12 |
Family
ID=69196519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910916476.2A Active CN110704127B (zh) | 2019-09-26 | 2019-09-26 | 按钮控制方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110704127B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117435092B (zh) * | 2023-12-21 | 2024-08-16 | 荣耀终端有限公司 | 点击操作信息的处理方法、电子设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455405A (zh) * | 2012-06-04 | 2013-12-18 | 阿里巴巴集团控股有限公司 | 防止按钮被重复点击的方法及系统、按钮解锁方法及系统 |
CN109218264A (zh) * | 2017-07-04 | 2019-01-15 | 华为技术有限公司 | 事件验证处理方法及装置 |
CN109284046A (zh) * | 2018-09-18 | 2019-01-29 | 广州虎牙信息科技有限公司 | 一种控制控件的方法、装置、终端及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104580244B (zh) * | 2015-01-26 | 2018-03-13 | 百度在线网络技术(北京)有限公司 | 恶意点击的防御方法和装置 |
-
2019
- 2019-09-26 CN CN201910916476.2A patent/CN110704127B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103455405A (zh) * | 2012-06-04 | 2013-12-18 | 阿里巴巴集团控股有限公司 | 防止按钮被重复点击的方法及系统、按钮解锁方法及系统 |
CN109218264A (zh) * | 2017-07-04 | 2019-01-15 | 华为技术有限公司 | 事件验证处理方法及装置 |
CN109284046A (zh) * | 2018-09-18 | 2019-01-29 | 广州虎牙信息科技有限公司 | 一种控制控件的方法、装置、终端及存储介质 |
Non-Patent Citations (1)
Title |
---|
jquery按钮绑定特殊事件;starof;《cnblogs》;20170213;第1-3页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110704127A (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107045508B (zh) | 应用程序的处理方法和装置 | |
CN105955779B (zh) | 进程关闭方法及装置 | |
CN110502324B (zh) | 云手机游戏的重启数据的处理方法、系统和存储介质 | |
CN103634592A (zh) | 智能电视自动化测试方法及系统 | |
CN105094777B (zh) | 实现应用截屏的方法及装置 | |
US11132123B2 (en) | Key display method, terminal, and non-transitory computer-readable medium | |
CN107741902B (zh) | 程序应用检测方法及程序应用检测装置 | |
CN106886331B (zh) | 一种触摸终端的数据处理方法、装置及触摸终端 | |
CN108635850B (zh) | 信息处理方法、装置及存储介质 | |
CN103596000A (zh) | 智能电视多界面切换测试方法及系统 | |
CN113992958B (zh) | 一种多窗口同屏互动方法、终端及存储介质 | |
CN110781080B (zh) | 程序调试方法及装置、存储介质 | |
CN112748827B (zh) | 截图分享方法、装置、终端设备和存储介质 | |
CN106919377B (zh) | 确定应用程序的展示界面是否是白屏的方法及装置 | |
CN112386916A (zh) | 资源加载的方法、装置及电子设备 | |
CN110704127B (zh) | 按钮控制方法、装置、电子设备和存储介质 | |
CN108322834B (zh) | 电视设置方法、电视及计算机可读存储介质 | |
CN106919489B (zh) | 应用程序的应用界面异常退出的监测方法及装置 | |
CN110795354A (zh) | 信息处理方法、装置及存储介质 | |
CN109348280B (zh) | 网络电视节目切换方法、智能电视及计算机可读存储介质 | |
CN110515834B (zh) | 接口测试方法、装置、移动终端及存储介质 | |
RU2566966C2 (ru) | Способ и устройство ускорения нажатия кнопок | |
CN113141530B (zh) | 基于遥控交互方法、装置、电子设备和存储介质 | |
CN110659082A (zh) | 应用程序界面的显示方法、装置、终端及存储介质 | |
CN107621939B (zh) | 一种应用优化方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |