CN117519863A - 进度条控制方法、装置、设备及存储介质 - Google Patents
进度条控制方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN117519863A CN117519863A CN202311215671.5A CN202311215671A CN117519863A CN 117519863 A CN117519863 A CN 117519863A CN 202311215671 A CN202311215671 A CN 202311215671A CN 117519863 A CN117519863 A CN 117519863A
- Authority
- CN
- China
- Prior art keywords
- progress bar
- progress
- segmented
- task flow
- mapping
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 238000013507 mapping Methods 0.000 claims abstract description 65
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 28
- 230000011218 segmentation Effects 0.000 claims description 56
- 238000010276 construction Methods 0.000 claims description 18
- 230000006978 adaptation Effects 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 abstract description 24
- 239000010410 layer Substances 0.000 description 81
- 238000004458 analytical method Methods 0.000 description 28
- 230000006870 function Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 8
- 238000004519 manufacturing process Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 230000002085 persistent effect Effects 0.000 description 6
- 238000004590 computer program Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 229940060321 after-bug Drugs 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 239000002355 dual-layer Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种进度条控制方法、装置、设备及存储介质。该方法包括:构造进度条实例;基于任务流程对所述进度条实例进行分段、分层;根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射。与相关技术相比,按照任务流程对进度条实例进行分段、分层,能够将各任务流程的进度计算相互独立,彼此互不干扰,同时采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射,通过上述步骤能够很好地避免因单个任务流程的进度计算错误映射至进度条时发生错误,防止出现进度条的进度更新出现更新更快、过慢、溢出、卡顿等问题。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种进度条控制方法、装置、设备及存储介质。
背景技术
进度条能够在计算机处理任务时,以动态更新的方式实时展示任务的处理进度等,使得用户能够根据进度响应不同事件,以此来提高用户界面(UserInterface,UI)对用户的友好性。
相关技术中,由于进度条更新需读取先前任务的完成进度,再结合当前任务的完成进度来实时更新进度条,若先前任务的进度计算错误,会使得当前任务的进度同样计算错误,最终映射到进度条时,可能会导致进度条的进度更新出现更新更快、过慢、溢出、卡顿等问题。
发明内容
本发明的目的是克服现有技术中的不足之处,提供一种进度条控制方法、装置、设备及存储介质,能够解决进度条的进度更新出现更新更快、过慢、溢出、卡顿等问题。
本申请的第一方面提供了一种进度条控制方法,包括:
构造进度条实例;
基于任务流程对所述进度条实例进行分段、分层;
根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射。
在本申请一种可能的实施方式中,还包括:
完成所述级联映射后,将所述进度条实例的信息参数传递至平台接口进行显示。
在本申请一种可能的实施方式中,所述根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射之后,还包括:
将所述不需要以进度条方式显示的所述任务流程对应的进度条配置成不更新所述进度条实例的状态。
在本申请一种可能的实施方式中,所述根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射时,所述预置进度算法按如下公式确定:
上一层的分段进度条的进度=当前层的分段进度条的起点位置+当前层的分段进度条的当前完成度*当前层的分段进度条的权重系数。
本申请的第二方面提供了一种进度条控制装置,包括:
构造模块,用于构造进度条实例;
分段/分层模块,用于基于任务流程对所述进度条实例进行分段、分层;
级联映射模块,用于根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射。
在本申请一种可能的实施方式中,还包括:
适配模块,用于完成所述级联映射后,将所述进度条实例的信息参数传递至平台接口进行显示。
在本申请一种可能的实施方式中,还包括:
配置模块,用于将所述不需要以进度条方式显示的所述任务流程对应的进度条配置成不更新所述进度条实例的状态。
在本申请一种可能的实施方式中,所述级联映射模块根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射时,所述预置进度算法按如下公式确定:
上一层的分段进度条的进度=当前层的分段进度条的起点位置+当前层的分段进度条的当前完成度*当前层的分段进度条的权重系数。
本申请的第三方面提供了一种电子设备,包括:
处理器;以及
存储器,其上存储有可执行代码,其特征在于,当所述可执行代码被所述处理器执行时,使所述处理器执行如上所述的进度条控制方法。
本申请的第四方面提供了一种计算机可读存储介质,存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如上所述的进度条控制方法。
本申请的技术方案,包括:构造进度条实例;基于任务流程对进度条实例进行分段、分层;根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射。与相关技术相比,按照任务流程对进度条实例进行分段、分层,能够将各任务流程的进度计算相互独立,彼此互不干扰,同时采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射,通过上述步骤能够很好地避免因单个任务流程的进度计算错误映射至进度条时发生错误,防止出现进度条的进度更新出现更新更快、过慢、溢出、卡顿等问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本申请一实施例示出的进度条控制方法的流程示意图;
图2是本申请另一实施例示出的进度条控制方法的流程示意图;
图3是本申请另一实施例示出的进度条控制方法的流程示意图;
图4是本申请一实施例示出的进度条控制装置的结构示意图;
图5是本申请另一实施例示出的进度条控制装置的结构示意图;
图6是本申请另一实施例示出的进度条控制装置的结构示意图;
图7为本申请一实施例示出的构造出“起点位置Start=0,权重系数=1”进度条实例的结构示意图;
图8为本申请一实施例示出的构造出“起点位置Start=0,权重系数=0.4”进度条实例的结构示意图;
图9为本申请一实施例示出的构造出位于第N层级的进度条实例的结构示意图;
图10为本申请一实施例示出的构造出位于第N+1层级的进度条实例的结构示意图;
图11为本申请一实施例示出的电子设备的结构示意图。
具体实施方式
为了便于理解本发明,下面将相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳实施方式。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本发明的公开内容理解的更加透彻全面。
需要说明的是,当元件被称为“固定于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的,并不表示是唯一的实施方式。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。
相关技术中,由于进度条更新需读取先前任务的完成进度,再结合当前任务的完成进度来实时更新进度条,若先前任务的进度计算错误,会使得当前任务的进度同样计算错误,最终映射到进度条时,可能会导致进度条的进度更新出现更新更快、过慢、溢出、卡顿等问题。
因此,本申请公开了一种进度条控制方法,以解决进度条的进度更新出现更新更快、过慢、溢出、卡顿等问题。
以下结合附图详细说明本申请的技术方案。
图1的是本申请一实施例中一种进度条控制方法的流程示意图。
请参阅图1,一种进度条控制方法,包括如下步骤:
步骤S110、构造进度条实例。
进度条实例,简称进度条,是用于描述计算机处理任务时,实时的,以图片形式显示处理任务的速度,完成度,剩余未完成任务量的大小,和可能需要处理时间,多数以长方形条状、环状显示,进度条能够让用户很清楚地知道当前任务处理进度状态,以此来响应不同事件。
构造进度条实例,可通过类成员函数来实现。类成员函数包括父类构造函数(也可称为基类构造函数)、子类构造函数,其中父类构造函数用于定义构造、更新进度条的功能函数,子类构造函数继承父类构造函数的所有属性,用于构造、更新进度条。
本实施例中,父类构造函数如表1,子类构造函数如表2。
父类(基类):CProgress
表1子类:ClassCsubProgress:publicCProgress
表2
从表2中的“ClassCsubProgress:publicCProgress”可以看出,子类“CsubProgress”继承了父类“CProgress”所有的属性,即父类“CProgress”中所定义的所有功能函数,子类“CsubProgress”都可以继承来使用。
因此,构造进度条实例,可采用表2中的构造函数CSubProgress来实现,其中构造函数CSubProgress中的有2个输入参数,分别是“Start”和“Weight”,“Start”代表的是当前进度条的起点位置,而“Weight”代表的当前进度条的占比权重,即权重系数。
例如,当需要构造出如图7的进度条时,通过令“Start=0,Weight=1”来构造出如图7的进度条,从图7可以看出,该进度条的起点位置为0,终点位置为100。
又如,当需要构造出如图8的进度条时,通过令“Start=0,Weight=0.4”来构造出如图8的进度条,从图8可以看出,该进度条的起点位置为0,终点位置为40。
步骤S120、基于任务流程对所述进度条实例进行分段、分层。
需要说明的是,对于进度条而言,其包括若干任务流程。以存储领域为例,对闪存进行量产时,量产工具中涉及到进度条的显示。对于量产工具而言,闪存的量产涉及到若干任务流程,任务流程包括预分析、扫描、写表。假设预分析占比总任务流程的百分之20,扫描占比总任务流程的百分之40,写表占比总任务流程的百分之40,且预分析、扫描、写表任务流程依次顺序执行,即只有在预分析任务流程完成的情况下,才可执行结来的扫描任务流程和写表任务流程。
通过步骤S110中的描述可知,可采用构造函数CsubProgress来构造进度条实例。本实施例中,由于预分析占比总任务流程的百分之20,扫描占比总任务流程的百分之40,写表占比总任务流程的百分之40,且预分析、扫描、写表任务流程依次顺序执行,可知预分析任务流程的起点位置Start=0,权重系数Weight=0.2;扫描任务流程的起点位置Start=20,权重系数Weight=0.4;写表任务流程的起点位置Start=60,权重系数Weight=0.4。因此,通过配置不同的“Start”和“Weight”,实现对步骤S110中的进度条的分段,分段后的进度条如图9,从图9可以看出,图9中的进度条包括3个任务流程,分别是预分析、扫描和写表。
另外,预分析、扫描和写表各自又可以包含若干子任务流程,基于此种情况,还可以对预分析、扫描和写表进一步进行分段,但考虑到进一步细分,会增加当前进度条的分段数量,因此,基于预分析、扫描和写表,又可以再构造出进度条,但此时的进度条,是位于不同层级的进度条。为了更好地理解此过程,假设:
预分析任务流程包含A任务流程、B任务流程、C任务流程,A任务流程占比预分析任务流程的百分之20,B任务流程占比预分析任务流程的百分之40,C任务流程占比预分析任务流程的百分之40,A任务流程、B任务流程、C任务流程同样顺序执行。
扫描任务流程包含D任务流程、E任务流程、F任务流程,D任务流程占比扫描任务流程的百分之30,E任务流程占比扫描任务流程的百分之40,F任务流程占比扫描任务流程的百分之30,D任务流程、E任务流程、F任务流程同样也是顺序执行。
写表任务流程包含G任务流程、H任务流程、I任务流程,G任务流程占比写表任务流程的百分之50,H任务流程占比写表任务流程的百分之10,I任务流程占比写表任务流程的百分之40,G任务流程、H任务流程、I任务流程同样也是顺序执行。
同样采用构造函数CsubProgress,通过输入不同的“Start”和“Weight”,构造出如图10的进度条,从图10可以看出,图10包括3个进度条,分别是预分析的进度条,其下又分成了3段进度条,分别对应是A/B/C任务流程、扫描的进度条,其下又分成了3段,分别对应是D/E/F任务流程、写表的进度条,其下又分成了3段,分别对应G/H/I任务流程。结合图9和图10的进度条,相当于图9的进度条是层级最高的进度条,即位于第N层级。图10的3个进度条是下一层级的进度条,即位于第N+1层级。同理,若A/B/C任务流程各自还有对应的子任务流程,还可以接着构造下一层的进度条(即位于第N+2级),以此类推。可以理解的是,本实施例的技术方案,可以将每个任务流程对应的进度条进行分段、分层,每个任务流程都有其对应的起点位置Start、权重系数Weight,彼此之间不互相干扰,预分析任务流程的进度计算并不依赖于扫描任务流程、写表任务流程的进度计算,且预分析任务流程下还可包括A/B/C任务流程,每个任务流程同样也是有对应的起点位置Start、权重系数Weight,同样也是彼此之间不互相干扰。
对于程序设计开发者而言,由于将进度条进行分段,当进度条的进度计算出现问题时,程序设计开发者只需要找到对应任务流程进度计算出错的代码,修复Bug后即可完成对进度条的修复。
步骤S130、根据起点位置Start、权重系数Weight和当前完成度Progress采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射。
结合图9和图10可以看出,当前层的分段进度条是在上一层的分段进度条的基础上进一步细化出来的,对进度条进行分段、分层,是为了将不同任务流程的进度计算彼此独立,不相互影响,保证进度条更新不出现问题,但当前层的分段进度条(第N+1层级)的更新进度最终还是需反馈到上一层的分段进度条(第N层级)中,这是因为进度条的显示只能显示最高层级的,对于最高层级以下的进度条,并不参与显示,仅是为了将各任务流程的进度计算相互独立而构造,因此,需要建立当前层的分段进度条与上一层的分段进度条之间的级联映射机制,保证最高层级的进度条的更新进度是准确的。
在对进度条分段、分层时,需要输入起点位置Start、权重系数Weight,通过起点位置Start、权重系数Weight这两个参数,限制当前层的分段进度条,防止当前层的分段进度条映射至上一层的分段进度条时溢出。
原理说明如下(结合图9和图10);
对于位于第N+1级的预分析任务流程的进度条而言,其在第N+1级这个层级上,其是0~100%完成度的进度条,而映射至上一层(第N级)时,预分析任务流程的起点位置Start=0,且预分析任务流程对应的是0~20%完成度的进度条(对应权重系数0.2),即使第N+1级的进度条完成度达到100%,映射至第N级时,对应的也只是20%完成度的进度条。
对于位于第N+1级的扫描任务流程的进度条而言,其在第N+1级这个层级上,其是0~100%的进度条,而映射至上一层(第N级)时,扫描任务流程的起点位置Start=20,且扫描任务流程对应的是20~60%的进度条(对应权重系数0.4),即使第N+1级的进度条完成度达到100%,映射至第N级时,对应的也只是40%完成度的进度条。
对于位于第N+1级的写表任务流程的进度条而言,其在第N+1级这个层级上,其是0~100%的进度条,而映射至上一层(第N级)时,写表任务流程的起点位置Start=60,且扫描任务流程对应的是60~100%的进度条(对应权重系数0.4),即使第N+1级的进度条完成度达到100%,映射至第N级时,对应的也只是40%完成度的进度条。
因此,本实施例中,预置进度算法按如下公式确定:
当前层的分段进度条的进度Position=当前层的分段进度条的起点位置Start+当前层的分段进度条的当前完成度Progress*当前层的分段进度条的权重系数Weight。
其中,起点位置Start、权重系数Weight是在构造进度条时需输入的参数,当前完成度Progress是计算机运算处理的结果,计算机根据当前任务流程的执行进度计算得出。
与相关技术相比,对比本实施例的技术方案,在对进度条进行分段、分层时,将各任务流程的进度计算彼此独立,互不影响。另外,预先配置相应的起点位置Start、权重系数Weight,限制当前层的分段进度条,防止当前层的分段进度条映射至上一层的分段进度条时溢出。此外,采用预置进度算法建立当前层的分段进度条与上一层的分段进度条之间的级联映射机制,让位于不同层级的分段进度条最终映射至最高层级的进度条时,最高层级的进度条的进度计算是精确的。
再者,本实施例的技术方案,即使某个任务流程的进度计算出现错误,在权重系数Weight的限制和分段的限制下,最终映射至最高层级的进度条时,也不会造成最高层级的进度条的进度计算出现严重错误。
图2的是本申请另一实施例中一种进度条控制方法的流程示意图。
请参阅图2,一种进度条控制方法,包括如下步骤:
步骤S210、构造进度条实例。
需要说明的是,构造进度条实例,可通过类成员函数来实现。类成员函数包括父类构造函数(也可称为基类构造函数)、子类构造函数,其中父类构造函数用于定义构造、更新进度条的功能函数,子类构造函数继承父类构造函数的所有属性,用于构造、更新进度条。有关父类构造函数、子类构造函数的说明请参阅表1、表2以及步骤S110的相关内容,此处不再赘述。
步骤S120、基于任务流程对所述进度条实例进行分段、分层。
需要说明的是,对于进度条而言,其包括若干任务流程。以存储领域为例,对闪存进行量产时,量产工具中涉及到进度条的显示。对于量产工具而言,闪存的量产涉及到若干任务流程,任务流程包括预分析、扫描、写表。假设预分析占比总任务流程的百分之20,扫描占比总任务流程的百分之40,写表占比总任务流程的百分之40,且预分析、扫描、写表任务流程依次顺序执行,即只有在预分析任务流程完成的情况下,才可执行结来的扫描任务流程和写表任务流程。
根据任务流程,通过配置不同的起点位置Start、权重系数,实现对进度条的分段、分层,详细的进度条构造例子,请参阅步骤S120的相关内容,此处不再赘述。可以理解的是,本实施例的技术方案,可以将每个任务流程对应的进度条进行分段、分层,每个任务流程都有其对应的起点位置Start、权重系数Weight,彼此之间不互相干扰,当前任务流程的进度计算并不依赖于其他任务流程的进度计算,且当前任务流程下还可包括另外的任务流程,每个任务流程同样也是有对应的起点位置Start、权重系数Weight,同样也是彼此之间不互相干扰。
对于程序设计开发者而言,由于将进度条进行分段,当进度条的进度计算出现问题时,程序设计开发者只需要找到对应任务流程进度计算出错的代码,修复Bug后即可完成对进度条的修复。
步骤S230、根据起点位置Start、权重系数Weight和当前完成度Progress采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射。
结合图9和图10可以看出,当前层的分段进度条是在上一层的分段进度条的基础上进一步细化出来的,对进度条进行分段、分层,是为了将不同任务流程的进度计算彼此独立,不相互影响,保证进度条更新不出现问题,但当前层的分段进度条(第N+1层级)的更新进度最终还是需反馈到上一层的分段进度条(第N层级)中,这是因为进度条的显示只能显示最高层级的,对于最高层级以下的进度条,并不参与显示,仅是为了将各任务流程的进度计算相互独立而构造,因此,需要建立当前层的分段进度条与上一层的分段进度条之间的级联映射机制,保证最高层级的进度条的更新进度是准确的。
在对进度条分段、分层时,需要输入起点位置Start、权重系数Weight,通过起点位置Start、权重系数Weight这两个参数,限制当前层的分段进度条,防止当前层的分段进度条映射至上一层的分段进度条时溢出。
原理说明如下(结合图9和图10);
对于位于第N+1级的预分析任务流程的进度条而言,其在第N+1级这个层级上,其是0~100%完成度的进度条,而映射至上一层(第N级)时,预分析任务流程的起点位置Start=0,且预分析任务流程对应的是0~20%完成度的进度条(对应权重系数0.2),即使第N+1级的进度条完成度达到100%,映射至第N级时,对应的也只是20%完成度的进度条。
对于位于第N+1级的扫描任务流程的进度条而言,其在第N+1级这个层级上,其是0~100%的进度条,而映射至上一层(第N级)时,扫描任务流程的起点位置Start=20,且扫描任务流程对应的是20~60%的进度条(对应权重系数0.4),即使第N+1级的进度条完成度达到100%,映射至第N级时,对应的也只是40%完成度的进度条。
对于位于第N+1级的写表任务流程的进度条而言,其在第N+1级这个层级上,其是0~100%的进度条,而映射至上一层(第N级)时,写表任务流程的起点位置Start=60,且扫描任务流程对应的是60~100%的进度条(对应权重系数0.4),即使第N+1级的进度条完成度达到100%,映射至第N级时,对应的也只是40%完成度的进度条。
本实施例中,预置进度算法按如下公式确定:
当前层的分段进度条的进度Position=当前层的分段进度条的起点位置Start+当前层的分段进度条的当前完成度Progress*当前层的分段进度条的权重系数Weight。
其中,起点位置Start、权重系数Weight是在构造进度条时需输入的参数,当前完成度Progress是计算机运算处理的结果,计算机根据当前任务流程的执行进度计算得出。
与相关技术相比,对比本实施例的技术方案,在对进度条进行分段、分层时,将各任务流程的进度计算彼此独立,互不影响。另外,预先配置相应的起点位置Start、权重系数Weight,限制当前层的分段进度条,防止当前层的分段进度条映射至上一层的分段进度条时溢出。此外,采用预置进度算法建立当前层的分段进度条与上一层的分段进度条之间的级联映射机制,让位于不同层级的分段进度条最终映射至最高层级的进度条时,最高层级的进度条的进度计算是精确的。
再者,本实施例的技术方案,即使某个任务流程的进度计算出现错误,在权重系数Weight的限制和分段的限制下,最终映射至最高层级的进度条时,也不会造成最高层级的进度条的进度计算出现严重错误。
步骤S240、完成所述级联映射后,将所述进度条实例的信息参数传递至平台接口进行显示。
完成级联映射后,位于最高层级的进度条就能够实时更新,可通过适配器CSubProgressT将进度条实例的相关信息参数传递至平台接口进行显示。适配器CSubProgressT也属于父类构造函数CProgress的子类,同样也可以继承父类构造函数Cprogress的所有属性,即适配器CsubProgressT同样也可以用于构造、更新进度条。
适配器CsubProgressT如表3。
适配器:template<typename T>class CSubProgressT:public CProgress
表3
另外,适配器函数CsubProgressT还具备向平台接口传递接近度条实例的信息参数功能,“Imp”就是平台接口,通过将“Start”和“Weight”传递给平台接口,实现对进度条的显示。
请参阅图3,一种进度条控制方法,其特征在于,包括如下步骤:
步骤S310、构造进度条实例。
步骤S310的相关阐述请参阅步骤S210,此处不再赘述。
步骤S320、基于任务流程对所述进度条实例进行分段、分层。
步骤S320的相关阐述请参阅步骤S220,此处不再赘述。
步骤S330、根据起点位置Start、权重系数Weight和当前完成度Progress采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射。
步骤S330的相关阐述请参阅步骤S230,此处不再赘述。
步骤S340、将所述不需要以进度条方式显示的所述任务流程对应的进度条配置成不更新所述进度条实例的状态。
需要说明的是,业务实现代码中,有很多功能模块是相互复用的,这些模块都会更新进度条,但是某些调用又不能更新进度条,则在调用这些不更新进度条的模块时,使用子类构造函数CDummyProgress的实例代替子类构造CSubProgress的实例。这样即实现了功能调用,又不用重写不一样的接口,非常有利于程序员进行程序设计的工作。
子类构造函数CDummyProgress如表4。
子类构造函数:classCDummyProgress:public CProgress
表4
步骤S350、完成所述级联映射后,将所述进度条实例的信息参数传递至平台接口进行显示。
步骤S350的相关阐述请参阅步骤S240,此处不再赘述。
与前述的方法实施例相对应本申请还公开了一种进度条控制装置及相应实施例。
如图4为本申请一实施例中的一种进度条控制装置的结构示意图。
请参阅图4,一种进度条控制装置400,包括:构造模块410、分段/分层模块420和级联映射模块430。
构造模块410用于构造进度条实例。
分段/分层模块420用于基于任务流程对所述进度条实例进行分段、分层。
级联映射模块430用于根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射。
其中,级联映射模块430根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射时,所述预置进度算法按如下公式确定:
当前层的分段进度条的进度=当前层的分段进度条的起点位置+当前层的分段进度条的当前完成度*当前层的分段进度条的权重系数。
需要说明的是,该实施例公开的进度条控制装置所实现的进度条控制方法如上述实施例,故在此不再进行详细讲述。可选地,本实施例中的各个模块和上述其他操作或功能分别为了实现前述实施例中的方法。
如图5为本申请另一实施例中的一种进度条控制装置的结构示意图。
请参阅图5,一种进度条控制装置400,包括:构造模块410、分段/分层模块420、级联映射模块430和适配模块440。
其中构造模块410、分段/分层模块420、级联映射模块430的相关阐述请参阅图4,此处不再赘述。
适配模块440用于完成所述级联映射后,将所述进度条实例的信息参数传递至平台接口进行显示。
需要说明的是,该实施例公开的进度条控制装置所实现的进度条控制方法如上述实施例,故在此不再进行详细讲述。可选地,本实施例中的各个模块和上述其他操作或功能分别为了实现前述实施例中的方法。
如图6为本申请另一实施例中的一种进度条控制装置的结构示意图。
请参阅图6,一种进度条控制装置400,包括:构造模块410、分段/分层模块420、级联映射模块430、配置模块450、适配模块440。
其中构造模块410、分段/分层模块420、级联映射模块430、适配模块440的相关阐述请参阅图5,此处不再赘述。
配置模块450用于将所述不需要以进度条方式显示的所述任务流程对应的进度条配置成不更新所述进度条实例的状态。
需要说明的是,该实施例公开的进度条控制装置所实现的进度条控制方法如上述实施例,故在此不再进行详细讲述。可选地,本实施例中的各个模块和上述其他操作或功能分别为了实现前述实施例中的方法。
参阅图11,本申请另一实施例示出了一种计算电子设备1100包括存储器1110和处理器1120。
处理器1120可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。
通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器存储器1110可以包括各种类型的存储单元,例如系统内存、只读存储器(ROM)和永久存储装置。
其中,ROM可以存储处理器1120或者计算机的其他模块需要的静态数据或者指令。永久存储装置可以是可读写的存储装置。永久存储装置可以是即使计算机断电后也不会失去存储的指令和数据的非易失性存储设备。在一些实施方式中,永久性存储装置采用大容量存储装置(例如磁或光盘、闪存)作为永久存储装置。
另外一些实施方式中,永久性存储装置可以是可移除的存储设备(例如软盘、光驱)。系统内存可以是可读写存储设备或者易失性可读写存储设备,例如动态随机访问内存。系统内存可以存储一些或者所有处理器在运行时需要的指令和数据。
此外,存储器1110可以包括任意计算机可读存储媒介的组合,包括各种类型的半导体存储芯片(例如DRAM,SRAM,SDRAM,闪存,可编程只读存储器),磁盘和/或光盘也可以采用。
在一些实施方式中,存储器1110可以包括可读和/或写的可移除的存储设备,例如激光唱片(CD)、只读数字多功能光盘(例如DVD-ROM,双层DVD-ROM)、只读蓝光光盘、超密度光盘、闪存卡(例如SD卡、min SD卡、Micro-SD卡等)、磁性软盘等。计算机可读存储媒介不包含载波和通过无线或有线传输的瞬间电子信号。存储器1110上存储有可执行代码,当可执行代码被处理器1120处理时,可以使处理器1120执行上文述及的方法中的部分或全部。
此外,根据本申请的方法还可以实现为一种计算机程序或计算机程序产品,该计算机程序或计算机程序产品包括用于执行本申请的上述方法中部分或全部步骤的计算机程序代码指令。
或者,本申请还可以实施为一种计算机可读存储介质(或非暂时性机器可读存储介质或机器可读存储介质),其上存储有可执行代码(或计算机程序或计算机指令代码),当可执行代码(或计算机程序或计算机指令代码)被电子设备(或服务器等)的处理器执行时,使处理器执行根据本申请的上述方法的各个步骤的部分或全部。
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文披露的各实施例。
Claims (10)
1.一种进度条控制方法,其特征在于,包括:
构造进度条实例;
基于任务流程对所述进度条实例进行分段、分层;
根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射。
2.根据权利要求1所述的进度条控制方法,其特征在于,还包括:
完成所述级联映射后,将所述进度条实例的信息参数传递至平台接口进行显示。
3.根据权利要求2所述的进度条控制方法,其特征在于,所述根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射之后,还包括:
将所述不需要以进度条方式显示的所述任务流程对应的进度条配置成不更新所述进度条实例的状态。
4.根据权利要求1~3中任意一项所述的进度条控制方法,其特征在于,所述根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射时,所述预置进度算法按如下公式确定:
上一层的分段进度条的进度=当前层的分段进度条的起点位置+当前层的分段进度条的完成度*当前层的分段进度条的权重系数。
5.一种进度条控制装置,其特征在于,包括:
构造模块,用于构造进度条实例;
分段/分层模块,用于基于任务流程对所述进度条实例进行分段、分层;
级联映射模块,用于根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射。
6.根据权利要求5所述的进度条控制装置,其特征在于,还包括:
适配模块,用于完成所述级联映射后,将所述进度条实例的信息参数传递至平台接口进行显示。
7.根据权利要求6所述的进度条控制装置,其特征在于,还包括:
配置模块,用于将所述不需要以进度条方式显示的所述任务流程对应的进度条配置成不更新所述进度条实例的状态。
8.根据权利要求5~7中任意一项所述的进度条控制装置,其特征在于,所述级联映射模块根据起点位置、权重系数和当前完成度采用预置进度算法将当前层的分段进度条的进度映射至上一层的分段进度条中,实现级联映射时,所述预置进度算法按如下公式确定:
上一层的分段进度条的进度=当前层的分段进度条的起点位置+当前层的分段进度条的当前完成度*当前层的分段进度条的权重系数。
9.一种电子设备,包括:
处理器;以及
存储器,其上存储有可执行代码,其特征在于,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1~4中任意一项所述的进度条控制方法。
10.一种计算机可读存储介质,其特征在于,存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1~4中任意一项所述的进度条控制生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311215671.5A CN117519863B (zh) | 2023-09-19 | 2023-09-19 | 进度条控制方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311215671.5A CN117519863B (zh) | 2023-09-19 | 2023-09-19 | 进度条控制方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117519863A true CN117519863A (zh) | 2024-02-06 |
CN117519863B CN117519863B (zh) | 2024-09-20 |
Family
ID=89763268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311215671.5A Active CN117519863B (zh) | 2023-09-19 | 2023-09-19 | 进度条控制方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117519863B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103279352A (zh) * | 2013-05-31 | 2013-09-04 | 北京小米科技有限责任公司 | 多级进度条、进度控制的方法和装置 |
CN103365761A (zh) * | 2012-03-09 | 2013-10-23 | 苹果公司 | 进度条 |
CN107220048A (zh) * | 2017-05-19 | 2017-09-29 | 北京酷我科技有限公司 | 一种音频频谱和进度条叠加算法 |
CN110275816A (zh) * | 2018-03-15 | 2019-09-24 | 苏宁易购集团股份有限公司 | 进度条显示控制方法、装置及计算机可读存储介质 |
CN116661785A (zh) * | 2023-05-31 | 2023-08-29 | 成都赛力斯科技有限公司 | 基于iOS的进度条实现方法、装置、电子设备及存储介质 |
-
2023
- 2023-09-19 CN CN202311215671.5A patent/CN117519863B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103365761A (zh) * | 2012-03-09 | 2013-10-23 | 苹果公司 | 进度条 |
CN103279352A (zh) * | 2013-05-31 | 2013-09-04 | 北京小米科技有限责任公司 | 多级进度条、进度控制的方法和装置 |
CN107220048A (zh) * | 2017-05-19 | 2017-09-29 | 北京酷我科技有限公司 | 一种音频频谱和进度条叠加算法 |
CN110275816A (zh) * | 2018-03-15 | 2019-09-24 | 苏宁易购集团股份有限公司 | 进度条显示控制方法、装置及计算机可读存储介质 |
CN116661785A (zh) * | 2023-05-31 | 2023-08-29 | 成都赛力斯科技有限公司 | 基于iOS的进度条实现方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117519863B (zh) | 2024-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10430735B2 (en) | Designer tool for managing cloud computing services | |
US8296721B2 (en) | Template-based software development | |
US20070156272A1 (en) | Integrated configuration, flow and execution system for semiconductor device experimental flows and production flows | |
KR20190094191A (ko) | 블록체인 기반 데이터 처리 방법 및 장치 | |
US9842183B1 (en) | Methods and systems for enabling concurrent editing of electronic circuit layouts | |
US20170337560A1 (en) | System for providing and employing recommended resolution paths | |
CN110297955B (zh) | 一种信息查询方法、装置、设备及介质 | |
CN109710622A (zh) | 一种数据更新方法、装置和系统 | |
CN117519863B (zh) | 进度条控制方法、装置、设备及存储介质 | |
US11262986B2 (en) | Automatic software generation for computer systems | |
CN111191161B (zh) | 一种页面展示方法、存储介质、电子设备及系统 | |
US10909025B2 (en) | System and method for automating functional testing | |
CN117077599B (zh) | 一种现场可编程逻辑门阵列视图生成方法及装置 | |
CN112559346A (zh) | 一种业务测试的方法及装置 | |
US20150212864A1 (en) | Systems and methods for enabling dynamic calls via filtering, grouping, and substitution mechanisms | |
CN116719591A (zh) | 股权图谱的展示方法、装置、存储系统和电子设备 | |
CN115576766A (zh) | 闪存管理算法调试方法、系统、设备和可读存储介质 | |
CN110502296B (zh) | 一种显示固件升级命令的方法、设备以及存储介质 | |
US7707543B2 (en) | Architecture for a computer-based development environment with self-contained components and a threading model | |
CN109471410B (zh) | 产品生命周期管理环境中的动态预览生成 | |
CN111984247A (zh) | 一种业务处理方法、装置和电子设备 | |
CN115687310A (zh) | 数据清洗方法及装置 | |
TW202219750A (zh) | 機器學習模型訓練方法、電子設備、控制器及存儲介質 | |
CN112286572A (zh) | 一种业务流程的配置方法及装置 | |
CN111880922A (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 |