CN108304181A - 一种对界面进行修改的方法及装置 - Google Patents
一种对界面进行修改的方法及装置 Download PDFInfo
- Publication number
- CN108304181A CN108304181A CN201810004115.6A CN201810004115A CN108304181A CN 108304181 A CN108304181 A CN 108304181A CN 201810004115 A CN201810004115 A CN 201810004115A CN 108304181 A CN108304181 A CN 108304181A
- Authority
- CN
- China
- Prior art keywords
- control
- modification
- request
- container
- switch
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Slot Machines And Peripheral Devices (AREA)
Abstract
本发明提供了一种对界面进行修改的方法及装置,该方法,包括:预先为待修改界面设置至少一个控制开关;预先设置针对待修改界面的控制规则;根据控制规则,设置至少一个控制开关的打开或关闭;接收外部输入的针对待修改界面的修改请求;确定修改请求的请求范围;从至少一个修改范围中,确定包含了请求范围的至少一个目标修改范围;判断每个目标修改范围对应的目标开关是否均打开,如果是,则根据控制规则,判断是否允许执行修改请求对应的修改操作,如果是,则执行修改请求对应的修改操作,根据修改操作对待修改界面进行修改,否则,禁止执行修改请求对应的修改操作。本发明能够更加方便地对界面进行修改。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种对界面进行修改的方法及装置。
背景技术
在实际生产环境中,业务系统的界面很难完全满足实际的业务需求,这时,就需要对界面进行修改。
在现有技术中,对界面的修改需要充分研究界面内部逻辑关系,在清楚了界面内部的逻辑关系后,对界面进行修改,使得修改后的界面能够正常运行。
通过上述描述可见,现有技术中对界面的修改需要对界面内部的逻辑关键进行充分研究,实现比较复杂。
发明内容
本发明实施例提供了一种对界面进行修改的方法及装置,能够更加方便地对界面进行修改。
一方面,本发明实施例提供了一种对界面进行修改的方法,包括:
预先为待修改界面设置至少一个控制开关,每个所述控制开关对应一个修改范围,当所述控制开关打开时,允许修改对应的修改范围,当所述控制开关关闭时,不允许修改对应的修改范围;
预先设置针对所述待修改界面的控制规则;
根据所述控制规则,设置所述至少一个控制开关的打开或关闭;
S1:接收外部输入的针对所述待修改界面的修改请求;
S2:确定所述修改请求的请求范围;
S3:从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围;
S4:判断每个所述目标修改范围对应的目标开关是否均打开,如果是,则执行S5;
S5:根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作,如果是,则执行S6,否则,执行S7;
S6:执行所述修改请求对应的修改操作,根据所述修改操作对所述待修改界面进行修改;
S7:禁止执行所述修改请求对应的修改操作。
进一步地,
所述至少一个控制开关包括:根控制开关、至少一个明细控制开关和至少一个容器控制开关;
所述预先为待修改界面设置至少一个控制开关,包括:
将所述待修改界面作为根容器控件,为所述根容器控件设置所述根控制开关,其中,所述根容器控件的所述根控制开关对应的修改范围是所述根容器控件,当所述根控制开关打开时,允许修改所述根容器控件以及所述根容器控件中的控件,当所述根控制开关关闭时,不允许修改所述根容器控件以及所述根容器控件中的控件;
为所述待修改界面中的至少一个明细控件分别设置对应的明细控制开关,其中,所述明细控件为不包含其他控件的控件,所述明细控件的所述明细控制开关对应的修改范围是所述明细控件,当所述明细控制开关打开时,允许修改所述明细控件,当所述明细控件开关关闭时,不允许修改所述明细控件;
为所述待修改界面中的至少一个容器控件分别设置对应的容器控制开关,其中,所述容器控件为包括其他控件的控件,所述容器控件的所述容器控制开关对应的修改范围是所述容器控件以及所述容器控件中的控件,当所述容器控制开关打开时,允许修改所述容器控件以及所述容器控件中的控件,当所述容器控件开关关闭时,不允许修改所述容器控件以及所述容器控件中的控件;
所述确定所述修改请求的请求范围,包括:
当所述修改请求是对控件进行修改时,确定所述修改请求需要修改的请求控件;
所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围,包括:
确定所述待修改界面中包含了所述请求控件的至少一个目标控件;
将每个所述目标控件的控制开关对应的修改范围以及所述请求控件的控制开关对应的修改范围作为所述目标修改范围。
进一步地,
所述预先为待修改界面设置至少一个控制开关,包括:
为所述待修改界面设置至少一个辅助控制开关,每个所述辅助控制开关对应至少一个控件,所述辅助控制开关对应的修改范围是所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关打开时,允许修改所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关关闭时,不允许修改所述辅助控制开关对应的所述至少一个控件;
所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围,包括:
根据每个所述辅助控制开关对应的至少一个控件,判断是否存在对应的至少一个控件中包含了所述请求控件的至少一个目标辅助控制开关,如果是,则将每个所述目标辅助控制开关对应的修改范围作为所述目标修改范围。
进一步地,
所述预先为待修改界面设置至少一个控制开关,包括:
设置至少一个布局控制开关,每个所述布局控制开关对应一个容器控件,所述布局控制开关对应的修改范围是所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关打开时,允许修改所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关关闭时,不允许修改所述布局控制开关对应的所述容器控件的布局;
所述确定所述修改请求的请求范围,包括:
当所述修改请求是对控件的布局进行修改时,确定所述修改请求需要修改的布局容器控件的布局;
所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围,包括:
将所述布局容器控件的布局作为所述目标修改范围。
进一步地,
所述预先设置针对所述待修改界面的控制规则,包括:
设置每个属性的默认控制规则;
设置至少一个属性控制规则,每个所述属性控制规则对应一个属性,所述属性包括:所述明细控件的属性、所述容器控件的属性;
设置至少一个通配控制规则,其中,每个所述通配控制规则对应一个所述容器控件,所述通配控制规则是针对对应的所述容器控件中的至少一个控件的至少一个属性的规则;
所述根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作,包括:
A1:确定所述修改请求需要修改的所述请求控件中的请求属性;
A2:判断是否存在针对所述请求属性的属性控制规则,如果是,则执行A3,否则,执行A4;
A3:判断针对所述请求属性的属性控制规则是否允许修改所述请求属性,如果是,则执行S6,否则,执行S7;
A4:判断是否存在对应的至少一个属性中包括所述请求属性的通配控制规则,如果是,则执行A5,否则,执行A6;
A5:判断对应的至少一个属性中包括所述请求属性的通配控制规则是否运行修改所述请求属性,如果是,则执行S6,否则,执行S7;
A6:判断所述请求属性对应的所述默认控制规则是否运行修改所述请求属性,如果是,则执行S6,否则,执行S7。
另一方面,本发明实施例提供了一种对界面进行修改的装置,包括:
开关设置单元,用于为待修改界面设置至少一个控制开关,每个所述控制开关对应一个修改范围,当所述控制开关打开时,允许修改对应的修改范围,当所述控制开关关闭时,不允许修改对应的修改范围;
规则设置单元,用于设置针对所述待修改界面的控制规则;
开关控制单元,用于根据所述控制规则,设置所述至少一个控制开关的打开或关闭;
修改控制单元,用于执行:
S1:接收外部输入的针对所述待修改界面的修改请求;
S2:确定所述修改请求的请求范围;
S3:从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围;
S4:判断每个所述目标修改范围对应的目标开关是否均打开,如果是,则执行S5;
S5:根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作,如果是,则执行S6,否则,执行S7;
S6:执行所述修改请求对应的修改操作,根据所述修改操作对所述待修改界面进行修改;
S7:禁止执行所述修改请求对应的修改操作。
进一步地,
所述至少一个控制开关包括:根控制开关、至少一个明细控制开关和至少一个容器控制开关;
所述开关设置单元,用于执行:
将所述待修改界面作为根容器控件,为所述根容器控件设置所述根控制开关,其中,所述根容器控件的所述根控制开关对应的修改范围是所述根容器控件,当所述根控制开关打开时,允许修改所述根容器控件以及所述根容器控件中的控件,当所述根控制开关关闭时,不允许修改所述根容器控件以及所述根容器控件中的控件;
为所述待修改界面中的至少一个明细控件分别设置对应的明细控制开关,其中,所述明细控件为不包含其他控件的控件,所述明细控件的所述明细控制开关对应的修改范围是所述明细控件,当所述明细控制开关打开时,允许修改所述明细控件,当所述明细控件开关关闭时,不允许修改所述明细控件;
为所述待修改界面中的至少一个容器控件分别设置对应的容器控制开关,其中,所述容器控件为包括其他控件的控件,所述容器控件的所述容器控制开关对应的修改范围是所述容器控件以及所述容器控件中的控件,当所述容器控制开关打开时,允许修改所述容器控件以及所述容器控件中的控件,当所述容器控件开关关闭时,不允许修改所述容器控件以及所述容器控件中的控件;
所述修改控制单元,在执行所述确定所述修改请求的请求范围时,具体用于:
当所述修改请求是对控件进行修改时,确定所述修改请求需要修改的请求控件;
所述修改控制单元,在执行所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围时,具体用于:
确定所述待修改界面中包含了所述请求控件的至少一个目标控件;
将每个所述目标控件的控制开关对应的修改范围以及所述请求控件的控制开关对应的修改范围作为所述目标修改范围。
进一步地,
所述开关设置单元,用于执行:
为所述待修改界面设置至少一个辅助控制开关,每个所述辅助控制开关对应至少一个控件,所述辅助控制开关对应的修改范围是所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关打开时,允许修改所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关关闭时,不允许修改所述辅助控制开关对应的所述至少一个控件;
所述修改控制单元,在执行所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围时,具体用于:
根据每个所述辅助控制开关对应的至少一个控件,判断是否存在对应的至少一个控件中包含了所述请求控件的至少一个目标辅助控制开关,如果是,则将每个所述目标辅助控制开关对应的修改范围作为所述目标修改范围。
进一步地,
所述开关设置单元,用于执行:
设置至少一个布局控制开关,每个所述布局控制开关对应一个容器控件,所述布局控制开关对应的修改范围是所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关打开时,允许修改所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关关闭时,不允许修改所述布局控制开关对应的所述容器控件的布局;
所述修改控制单元,在执行所述确定所述修改请求的请求范围时,具体用于:
当所述修改请求是对控件的布局进行修改时,确定所述修改请求需要修改的布局容器控件的布局;
所述修改控制单元,在执行所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围时,具体用于:将所述布局容器控件的布局作为所述目标修改范围。
进一步地,
所述规则设置单元,用于执行:
设置每个属性的默认控制规则;
设置至少一个属性控制规则,每个所述属性控制规则对应一个属性,所述属性包括:所述明细控件的属性、所述容器控件的属性;
设置至少一个通配控制规则,其中,每个所述通配控制规则对应一个所述容器控件,所述通配控制规则是针对对应的所述容器控件中的至少一个控件的至少一个属性的规则;
所述修改控制单元,在执行所述根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作时,具体用于:
A1:确定所述修改请求需要修改的所述请求控件中的请求属性;
A2:判断是否存在针对所述请求属性的属性控制规则,如果是,则执行A3,否则,执行A4;
A3:判断针对所述请求属性的属性控制规则是否允许修改所述请求属性,如果是,则执行S6,否则,执行S7;
A4:判断是否存在对应的至少一个属性中包括所述请求属性的通配控制规则,如果是,则执行A5,否则,执行A6;
A5:判断对应的至少一个属性中包括所述请求属性的通配控制规则是否运行修改所述请求属性,如果是,则执行S6,否则,执行S7;
A6:判断所述请求属性对应的所述默认控制规则是否运行修改所述请求属性,如果是,则执行S6,否则,执行S7。
在本发明实施例中,为待修改界面设置了控制开关和控制规则,用户在对待修改界面进行修改时,只需输入修改请求即可,通过控制开关和控制规则可以自定识别符合要求的修改请求,并执行符合要求的修改请求对应的修改操作,用户无需了解待修改界面的内部逻辑等信息,能够更加方便地对界面进行修改。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种对界面进行修改的方法的流程图;
图2是本发明一实施例提供的另一种对界面进行修改的方法的流程图;
图3是本发明一实施例提供的一种对界面进行修改的装置的示意图;
图4是本发明一实施例提供的另一种对界面进行修改的装置的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种对界面进行修改的方法,该方法可以包括以下步骤:
步骤101:预先为待修改界面设置至少一个控制开关,每个所述控制开关对应一个修改范围,当所述控制开关打开时,允许修改对应的修改范围,当所述控制开关关闭时,不允许修改对应的修改范围;
步骤102:预先设置针对所述待修改界面的控制规则;
步骤103:根据所述控制规则,设置所述至少一个控制开关的打开或关闭;
步骤104:接收外部输入的针对所述待修改界面的修改请求;
步骤105:确定所述修改请求的请求范围;
步骤106:从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围;
步骤107:判断每个所述目标修改范围对应的目标开关是否均打开,如果是,则执行步骤108;
步骤108:根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作,如果是,则执行步骤109,否则,执行步骤110;
步骤109:执行所述修改请求对应的修改操作,根据所述修改操作对所述待修改界面进行修改;
步骤110:禁止执行所述修改请求对应的修改操作。
在本发明实施例中,为待修改界面设置了控制开关和控制规则,用户在对待修改界面进行修改时,只需输入修改请求即可,通过控制开关和控制规则可以自定识别符合要求的修改请求,并执行符合要求的修改请求对应的修改操作,用户无需了解待修改界面的内部逻辑等信息,能够更加方便地对界面进行修改。
在本发明一实施例中,所述至少一个控制开关包括:根控制开关、至少一个明细控制开关和至少一个容器控制开关;
所述预先为待修改界面设置至少一个控制开关,包括:
将所述待修改界面作为根容器控件,为所述根容器控件设置所述根控制开关,其中,所述根容器控件的所述根控制开关对应的修改范围是所述根容器控件,当所述根控制开关打开时,允许修改所述根容器控件以及所述根容器控件中的控件,当所述根控制开关关闭时,不允许修改所述根容器控件以及所述根容器控件中的控件;
为所述待修改界面中的至少一个明细控件分别设置对应的明细控制开关,其中,所述明细控件为不包含其他控件的控件,所述明细控件的所述明细控制开关对应的修改范围是所述明细控件,当所述明细控制开关打开时,允许修改所述明细控件,当所述明细控件开关关闭时,不允许修改所述明细控件;
为所述待修改界面中的至少一个容器控件分别设置对应的容器控制开关,其中,所述容器控件为包括其他控件的控件,所述容器控件的所述容器控制开关对应的修改范围是所述容器控件以及所述容器控件中的控件,当所述容器控制开关打开时,允许修改所述容器控件以及所述容器控件中的控件,当所述容器控件开关关闭时,不允许修改所述容器控件以及所述容器控件中的控件;
所述确定所述修改请求的请求范围,包括:
当所述修改请求是对控件进行修改时,确定所述修改请求需要修改的请求控件;
所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围,包括:
确定所述待修改界面中包含了所述请求控件的至少一个目标控件;
将每个所述目标控件的控制开关对应的修改范围以及所述请求控件的修改范围作为所述目标修改范围。
在本发明实施例中,控制开关对应的修改范围越大,控制开关的优先级越高。具体地,控制开关的优先级从高到低依次是:根控制开关、容器控制开关、明细控制开关。只要根控制开关关闭,整个待修改界面都是不允许修改的,无需关心其他控制开关的状态。
当修改请求需要修改的请求控件没有上级的容器控件时,请求控件对应的目标控件为根容器控件。当修改请求需要修改的请求控件有上级的容器控件时,请求控件对应的目标控件为根容器控件以及请求控件的各个上级的容器控件。
在一种实现方式中,可以将每个控制开关默认设置为关闭的状态,也就是说,在默认情况下,待修改界面是不允许修改的。
在本发明一实施例中,所述预先为待修改界面设置至少一个控制开关,包括:
为所述待修改界面设置至少一个辅助控制开关,每个所述辅助控制开关对应至少一个控件,所述辅助控制开关对应的修改范围是所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关打开时,允许修改所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关关闭时,不允许修改所述辅助控制开关对应的所述至少一个控件;
所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围,包括:
根据每个所述辅助控制开关对应的至少一个控件,判断是否存在对应的至少一个控件中包含了所述请求控件的至少一个目标辅助控制开关,如果是,则将每个所述目标辅助控制开关对应的修改范围作为所述目标修改范围。
在本发明实施例中,控制开关还可以包括辅助控制开关,通过辅助控制开关增加控制开关的多样性,使得通过控制开关能够更加灵活的控制待修改界面的修改情况。辅助控制开关对应的至少一个控件可以不包含在同一个容器控件中,可以来自不同的容器控件,也可以包括独立的明细控件。通过辅助控件开关能够控制任意指定的控件是否被允许修改。
当请求控件在某个辅助控制开关的修改范围内时,是否允许修改该请求控件还需要考虑该辅助控制开关的打开或关闭的情况。
在本发明一实施例中,所述预先为待修改界面设置至少一个控制开关,包括:
设置至少一个布局控制开关,每个所述布局控制开关对应一个容器控件,所述布局控制开关对应的修改范围是所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关打开时,允许修改所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关关闭时,不允许修改所述布局控制开关对应的所述容器控件的布局;
所述确定所述修改请求的请求范围,包括:
当所述修改请求是对控件的布局进行修改时,确定所述修改请求需要修改的布局容器控件的布局;
所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围,包括:
将所述布局容器控件的布局作为所述目标修改范围。
在本发明实施例中,设置了布局控制开关,通过布局控制开关可以控制待修改界面的布局的修改情况。当布局控制开关打开时,该布局控制开关对应的容器控件中的各个控件的布局可以被修改。
在本发明一实施例中,所述预先设置针对所述待修改界面的控制规则,包括:
设置每个属性的默认控制规则;
设置至少一个属性控制规则,每个所述属性控制规则对应一个属性,所述属性包括:所述明细控件的属性、所述容器控件的属性;
设置至少一个通配控制规则,其中,每个所述通配控制规则对应一个所述容器控件,所述通配控制规则是针对对应的所述容器控件中的至少一个控件的至少一个属性的规则;
所述根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作,包括:
A1:确定所述修改请求需要修改的所述请求控件中的请求属性;
A2:判断是否存在针对所述请求属性的属性控制规则,如果是,则执行A3,否则,执行A4;
A3:判断针对所述请求属性的属性控制规则是否允许修改所述请求属性,如果是,则执行步骤109,否则,执行步骤110;
A4:判断是否存在对应的至少一个属性中包括所述请求属性的通配控制规则,如果是,则执行A5,否则,执行A6;
A5:判断对应的至少一个属性中包括所述请求属性的通配控制规则是否运行修改所述请求属性,如果是,则执行步骤109,否则,执行步骤110;
A6:判断所述请求属性对应的所述默认控制规则是否运行修改所述请求属性,如果是,则执行步骤109,否则,执行步骤110。
在本发明实施例中,通过设置属性控制规则可以规定对控件的属性是否允许修改。设置每个属性的默认控制规则,该默认控制规则可以是默认允许修改,也可以是默认不允许修改。设置通配控制规则可以同时规定至少一个属性是否被允许修改的情况,通配控制规则是一个范围规则。
对于某个属性来说,如果设置有该属性的属性控制规则,那么,该属性的默认控制规则就无效了,该属性是否允许被修改由该属性的属性控制规则来控制。如果存在某个通配控制规则对该属性是否允许被修改进行了限定,该属性的默认控制规则也无效了。只有没有任何关于该属性的属性控制规则和通配控制规则时,该属性的默认控制规则才有效。
对于控制规则来说,越具体的规则优先级越高。定义在具体的明细控件上的属性控制规则优先级是最高的,定义在明细控件所属的容器控件上的通配控制规则优先级次之。同理若容器控件A包含在容器控件B中,容器控件A上定义的通配控制规则的优先级要高于容器控件B的通配控制规则。在此属性规则叠加原则中,优先级最低的是根容器控件上定义的通配控制规则,同时根容器控件上定义的通配控制规则也是默认控制规则。
在执行A2时,如果不存在针对请求属性的属性控制规则,说明该请求属性维持默认控制规则。
如图2所示,本发明实施例提供了一种对界面进行修改的方法,该方法可以包括以下步骤:
步骤201:将待修改界面作为根容器控件,为根容器控件设置根控制开关,为待修改界面中的至少一个明细控件分别设置对应的明细控制开关,为待修改界面中的至少一个容器控件分别设置对应的容器控制开关,为待修改界面设置至少一个辅助控制开关。
其中,根容器控件的根控制开关对应的修改范围是根容器控件,当根控制开关打开时,允许修改根容器控件以及根容器控件中的控件,当根控制开关关闭时,不允许修改根容器控件以及根容器控件中的控件;明细控件为不包含其他控件的控件,明细控件的明细控制开关对应的修改范围是明细控件,当明细控制开关打开时,允许修改明细控件,当明细控件开关关闭时,不允许修改明细控件。容器控件为包括其他控件的控件,容器控件的容器控制开关对应的修改范围是容器控件以及容器控件中的控件,当容器控制开关打开时,允许修改容器控件以及容器控件中的控件,当容器控件开关关闭时,不允许修改容器控件以及容器控件中的控件;每个辅助控制开关对应至少一个控件,辅助控制开关对应的修改范围是辅助控制开关对应的至少一个控件,当辅助控制开关打开时,允许修改辅助控制开关对应的至少一个控件,当辅助控制开关关闭时,不允许修改辅助控制开关对应的至少一个控件。
另外,可以设置至少一个布局控制开关。
步骤202:设置每个属性的默认控制规则,设置至少一个属性控制规则,设置至少一个通配控制规则。
每个属性控制规则对应一个属性,属性包括:明细控件的属性、容器控件的属性;每个通配控制规则对应一个容器控件,通配控制规则是针对对应的容器控件中的至少一个控件的至少一个属性的规则。
步骤203:根据控制规则,设置该至少一个控制开关的打开或关闭。
步骤204:接收外部输入的针对待修改界面的修改请求。
步骤205:当修改请求是对控件进行修改时,确定修改请求需要修改的请求控件。
步骤206:确定待修改界面中包含了请求控件的至少一个目标控件,将每个目标控件的控制开关对应的修改范围以及请求控件的控制开关对应的修改范围作为目标修改范围。
步骤207:根据每个辅助控制开关对应的至少一个控件,判断是否存在对应的至少一个控件中包含了请求控件的至少一个目标辅助控制开关,如果是,则执行步骤208,否则,执行步骤209。
步骤208:将每个目标辅助控制开关对应的修改范围作为目标修改范围,执行步骤209。
当修改请求是对控件的布局进行修改时,确定修改请求需要修改的布局容器控件的布局。将布局容器控件的布局作为目标修改范围。
步骤209:判断每个目标修改范围对应的目标开关是否均打开,如果是,则执行步骤210,否则,执行步骤217。
步骤210:确定修改请求需要修改的请求控件中的请求属性,执行步骤211。
步骤211:判断是否存在针对请求属性的属性控制规则,如果是,则执行步骤212,否则,执行步骤213。
步骤212:判断针对请求属性的属性控制规则是否允许修改请求属性,如果是,则执行步骤216,否则,执行步骤217。
步骤213:判断是否存在对应的至少一个属性中包括请求属性的通配控制规则,如果是,则执行步骤214,否则,执行步骤215;
步骤214:判断对应的至少一个属性中包括请求属性的通配控制规则是否运行修改请求属性,如果是,则执行步骤216,否则,执行步骤217;
步骤215:判断请求属性对应的默认控制规则是否运行修改请求属性,如果是,则执行步骤216,否则,执行步骤217。
步骤216:执行修改请求对应的修改操作,根据修改操作对待修改界面进行修改。
步骤217:禁止执行修改请求对应的修改操作。
在本发明实施例中,在设置控制规则之前,可以建立抽象规则模型,根据抽象规则模型和开发人员的需求设置控制规则。
此抽象规则模型包含如下几个组成部分:
用户界面的抽象描述、明细控件的规则描述、容器控件的规则描述。
用户界面的抽象描述,是指用户界面针对控制规则建立的抽象模型。用户界面上的控件集合按包含关系形成一棵控件树,明细控件与容器控件根据此包含关系建立用户界面的抽象模型,用户界面的抽象模型树是建立规则模型的基础。
明细控件的规则描述,用于表达明细控件上的规则集合。该规则集合指在进行个性化定制时,明细控件上可以修改的属性的控制规则集合,可以是一个键值对的集合。在这个键值对中,键是明细控件上属性的名称,值是对应属性的访问权限。
明细控件上维护的属性控制规则集合,初始时访问权限都是默认,代表未定义过控制规则。
容器控件的控制规则描述,用于表达容器控件上的控制规则集合。容器控件的规则描述由四部分组成:
1.容器本身作为控件的规则描述,与明细控件类似,包含容器控件本身属性控制规则的集合,以及包含一个容器控件的总开关。容器控件的开关默认是关闭的,代表容器控件在个性化定制时默认是不能进行任何修改操作的,包括容器中包含的控件;若容器控件的开关设置为True,代表容器控件以及容器控件中包含的控件可以按规则定义的访问权限来决定修改操作是否可以执行。
2.容器控件上的通配控制规则描述,在这里容器控件被当作是一个范围的概念,代表了容器控件中包含的所有子控件。容器控件上的通配控制规则代表将统一应用于容器控件中所有子控件上的某属性的规则。所以通配控制规则是一种范围规则,是在某指定范围内有效的属性控制规则。通配控制规则通常使用在需要全局定义某规则的场景。
3.容器控件上的辅助控制开关集合描述,应用于容器中包含的子控件集合的开关,包括是否允许修改容器内控件属性的开关,以及是否允许修改容器内控件布局等通用开关。随着具体容器控件类型的不同,容器控件上的辅助开关集合定义不同的控制开关。这些控制开关默认都是关闭的。
4.容器控件中包含的子控件的规则集合描述,子控件可以是容器控件,也可以是明细控件,该结构使得用户界面的抽象描述结构得以维护。
以单据录入的用户界面为例,该录入界面中有两个分组面板容器,分别为基本信息的分组面板BaseInfoGroupPanel与其他信息的分组面板OtherGroupPanel。两个分组面板容器中分别包含有一组输入控件,以上是该用户界面的控件包含关系描述。
该界面是标准产品中的界面,界面开发者认为该界面可以支持个性化的定制扩展,并想定义出如下的界面个性化控制效果:
1.界面上输入控件的标签属性默认允许修改;
2.【基本信息分组】中的输入控件的标签属性不允许修改;
3.【基本信息分组】中的【摘要输入控件】的标签属性允许修改;
4.【其他信息分组】中不允许修改任何属性。
根据上述个性化定制需求描述,定义的控制规则的集合如下:
1.窗体根容器控件的控制开关设置为打开,代表窗体允许进行个性化定制。
2.窗体根容器控件的通配规则中增加:输入控件的标签属性的访问权限设置为允许修改。
3.基本信息分组容器控件的控制开关设置为打开,代表容器允许进行个性化定制。
4.基本信息分组容器控件的【是否允许修改属性】的辅助控制开关设置为打开,代表容器中的子控件允许修改属性。
5.基本信息分组容器控件上的通配控制规则增加:输入控件的标签属性的访问权限设置为禁止修改。
6.基本信息分组容器控件中的摘要输入控件的开关设置为True。
7.基本信息分组容器控件中的摘要输入控件的标签属性的访问权限设置为允许修改。
以上为该录入界面定义的规则集合。该录入界面部署到生产环境中后,实施人员要对界面进行个性化定制。在定制过程中:
a)当发起修改基本信息分组容器控件中的摘要输入控件的标签属性的修改请求时,通过对控制规则进行叠加,来判断该修改请求是否允许。首先是控制开关的叠加:根据规则1窗体根容器控件的控制开关为打开,说明允许进行个性化定制,然后再检查从根容器控件到摘要输入控件的父容器控件的容器链上容器控件的控制开关以及容器控件上【是否允许修改属性】的控制开关是否都是打开,这里容器链上只有基本信息分组面板容器控件,且两个开关值都是打开(规则3,规则4),最后检查到摘要输入控件的控制开关也设置为打开(规则6),判断控制开关是检查通过的。之后进行属性控制规则的叠加,首先,检查摘要输入控件的标签属性是否有定义过规则,检查到存在规则7,且访问权限设置为允许修改,则该修改摘要输入控件标签属性的操作申请是允许的,该属性修改成功。
b)当发起修改基本信息分组容器控件中的单据编号输入控件的标签属性的请求时,与a类似,在进行控制开关检查时,父容器上的控制开关检查能通过,但规则集合中没有关于单据编号输入控件的控制开关规则定义,按默认开关是关闭的来处理,则开关检查未通过,不再进行属性叠加的操作,判断结果为单据编号输入控件的标签属性不能修改,操作申请不被允许。
c)当发起修改其他信息分组中的付款方式输入控件的标签属性的请求时,先进行开关检查,发现从根容器控件开始的容器链上,在定义的规则集合中,没有关于其父容器控件的控制开关设置的规则,根据开关默认是关闭的,在判断到其父容器控件的控制开关时就可得出结论,该请求不被允许。
在本发明实施例中,通过将用户界面抽象为明细控件与容器控件的组合,建立明细控件与容器控件的规则表达,并建立起用户界面的抽象控制规则模型,并结合上述抽象控制规则模型以及实际需求,定义出一组控制规则的集合。从而在用户进行个性化定制时,操作请求在执行前会访问这组控制规则的集合,该控制规则的集合按一定原则进行叠加来决定请求的访问权限。通过本方法,实现对界面个性化定制操作的有效控制。
如图3、图4所示,本发明实施例提供了一种对界面进行修改的装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例提供的一种对界面进行修改的装置所在设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的一种对界面进行修改的装置,包括:
开关设置单元401,用于为待修改界面设置至少一个控制开关,每个所述控制开关对应一个修改范围,当所述控制开关打开时,允许修改对应的修改范围,当所述控制开关关闭时,不允许修改对应的修改范围;
规则设置单元402,用于设置针对所述待修改界面的控制规则;
开关控制单元403,用于根据所述控制规则,设置所述至少一个控制开关的打开或关闭;
修改控制单元404,用于执行:
S1:接收外部输入的针对所述待修改界面的修改请求;
S2:确定所述修改请求的请求范围;
S3:从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围;
S4:判断每个所述目标修改范围对应的目标开关是否均打开,如果是,则执行S5;
S5:根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作,如果是,则执行S6,否则,执行S7;
S6:执行所述修改请求对应的修改操作,根据所述修改操作对所述待修改界面进行修改;
S7:禁止执行所述修改请求对应的修改操作。
在本发明一实施例中,所述至少一个控制开关包括:根控制开关、至少一个明细控制开关和至少一个容器控制开关;
所述开关设置单元,用于执行:
将所述待修改界面作为根容器控件,为所述根容器控件设置所述根控制开关,其中,所述根容器控件的所述根控制开关对应的修改范围是所述根容器控件,当所述根控制开关打开时,允许修改所述根容器控件以及所述根容器控件中的控件,当所述根控制开关关闭时,不允许修改所述根容器控件以及所述根容器控件中的控件;
为所述待修改界面中的至少一个明细控件分别设置对应的明细控制开关,其中,所述明细控件为不包含其他控件的控件,所述明细控件的所述明细控制开关对应的修改范围是所述明细控件,当所述明细控制开关打开时,允许修改所述明细控件,当所述明细控件开关关闭时,不允许修改所述明细控件;
为所述待修改界面中的至少一个容器控件分别设置对应的容器控制开关,其中,所述容器控件为包括其他控件的控件,所述容器控件的所述容器控制开关对应的修改范围是所述容器控件以及所述容器控件中的控件,当所述容器控制开关打开时,允许修改所述容器控件以及所述容器控件中的控件,当所述容器控件开关关闭时,不允许修改所述容器控件以及所述容器控件中的控件;
所述修改控制单元,在执行所述确定所述修改请求的请求范围时,具体用于:
当所述修改请求是对控件进行修改时,确定所述修改请求需要修改的请求控件;
所述修改控制单元,在执行所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围时,具体用于:
确定所述待修改界面中包含了所述请求控件的至少一个目标控件;
将每个所述目标控件的控制开关对应的修改范围以及所述请求控件的控制开关对应的修改范围作为所述目标修改范围。
在本发明一实施例中,所述开关设置单元,用于执行:
为所述待修改界面设置至少一个辅助控制开关,每个所述辅助控制开关对应至少一个控件,所述辅助控制开关对应的修改范围是所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关打开时,允许修改所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关关闭时,不允许修改所述辅助控制开关对应的所述至少一个控件;
所述修改控制单元,在执行所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围时,具体用于:
根据每个所述辅助控制开关对应的至少一个控件,判断是否存在对应的至少一个控件中包含了所述请求控件的至少一个目标辅助控制开关,如果是,则将每个所述目标辅助控制开关对应的修改范围作为所述目标修改范围。
在本发明一实施例中,所述开关设置单元,用于执行:
设置至少一个布局控制开关,每个所述布局控制开关对应一个容器控件,所述布局控制开关对应的修改范围是所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关打开时,允许修改所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关关闭时,不允许修改所述布局控制开关对应的所述容器控件的布局;
所述修改控制单元,在执行所述确定所述修改请求的请求范围时,具体用于:
当所述修改请求是对控件的布局进行修改时,确定所述修改请求需要修改的布局容器控件的布局;
所述修改控制单元,在执行所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围时,具体用于:将所述布局容器控件的布局作为所述目标修改范围。
在本发明一实施例中,所述规则设置单元,用于执行:
设置每个属性的默认控制规则;
设置至少一个属性控制规则,每个所述属性控制规则对应一个属性,所述属性包括:所述明细控件的属性、所述容器控件的属性;
设置至少一个通配控制规则,其中,每个所述通配控制规则对应一个所述容器控件,所述通配控制规则是针对对应的所述容器控件中的至少一个控件的至少一个属性的规则;
所述修改控制单元,在执行所述根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作时,具体用于:
A1:确定所述修改请求需要修改的所述请求控件中的请求属性;
A2:判断是否存在针对所述请求属性的属性控制规则,如果是,则执行A3,否则,执行A4;
A3:判断针对所述请求属性的属性控制规则是否允许修改所述请求属性,如果是,则执行S6,否则,执行S7;
A4:判断是否存在对应的至少一个属性中包括所述请求属性的通配控制规则,如果是,则执行A5,否则,执行A6;
A5:判断对应的至少一个属性中包括所述请求属性的通配控制规则是否运行修改所述请求属性,如果是,则执行S6,否则,执行S7;
A6:判断所述请求属性对应的所述默认控制规则是否运行修改所述请求属性,如果是,则执行S6,否则,执行S7。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例提供了一种可读介质,包括执行指令,当存储控制器的处理器执行所述执行指令时,所述存储控制器执行本发明实施例提供的任意一种对界面进行修改的方法。
本发明实施例提供了一种存储控制器,包括:处理器、存储器和总线;
所述存储器用于存储执行指令,所述处理器与所述存储器通过所述总线连接,当所述存储控制器运行时,所述处理器执行所述存储器存储的执行指令,以使所述存储控制器执行本发明实施例提供的任意一种对界面进行修改的方法。
本发明各个实施例至少具有如下有益效果:
1、在本发明实施例中,为待修改界面设置了控制开关和控制规则,用户在对待修改界面进行修改时,只需输入修改请求即可,通过控制开关和控制规则可以自定识别符合要求的修改请求,并执行符合要求的修改请求对应的修改操作,用户无需了解待修改界面的内部逻辑等信息,能够更加方便地对界面进行修改。
2、在本发明实施例中,控制开关还可以包括辅助控制开关,通过辅助控制开关增加控制开关的多样性,使得通过控制开关能够更加灵活的控制待修改界面的修改情况。
3、在本发明实施例中,用户界面的个性化定制行为可以得到很好的控制,既有细粒度的具体控件具体属性的控制,也有大范围的通用控制,而且二者可以混合使用,实现复杂灵活、可控性好的控制方案。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个〃····〃”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种对界面进行修改的方法,其特征在于,
预先为待修改界面设置至少一个控制开关,每个所述控制开关对应一个修改范围,当所述控制开关打开时,允许修改对应的修改范围,当所述控制开关关闭时,不允许修改对应的修改范围;
预先设置针对所述待修改界面的控制规则;
根据所述控制规则,设置所述至少一个控制开关的打开或关闭;
包括:
S1:接收外部输入的针对所述待修改界面的修改请求;
S2:确定所述修改请求的请求范围;
S3:从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围;
S4:判断每个所述目标修改范围对应的目标开关是否均打开,如果是,则执行S5;
S5:根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作,如果是,则执行S6,否则,执行S7;
S6:执行所述修改请求对应的修改操作,根据所述修改操作对所述待修改界面进行修改;
S7:禁止执行所述修改请求对应的修改操作。
2.根据权利要求1所述的方法,其特征在于,
所述至少一个控制开关包括:根控制开关、至少一个明细控制开关和至少一个容器控制开关;
所述预先为待修改界面设置至少一个控制开关,包括:
将所述待修改界面作为根容器控件,为所述根容器控件设置所述根控制开关,其中,所述根容器控件的所述根控制开关对应的修改范围是所述根容器控件,当所述根控制开关打开时,允许修改所述根容器控件以及所述根容器控件中的控件,当所述根控制开关关闭时,不允许修改所述根容器控件以及所述根容器控件中的控件;
为所述待修改界面中的至少一个明细控件分别设置对应的明细控制开关,其中,所述明细控件为不包含其他控件的控件,所述明细控件的所述明细控制开关对应的修改范围是所述明细控件,当所述明细控制开关打开时,允许修改所述明细控件,当所述明细控件开关关闭时,不允许修改所述明细控件;
为所述待修改界面中的至少一个容器控件分别设置对应的容器控制开关,其中,所述容器控件为包括其他控件的控件,所述容器控件的所述容器控制开关对应的修改范围是所述容器控件以及所述容器控件中的控件,当所述容器控制开关打开时,允许修改所述容器控件以及所述容器控件中的控件,当所述容器控件开关关闭时,不允许修改所述容器控件以及所述容器控件中的控件;
所述确定所述修改请求的请求范围,包括:
当所述修改请求是对控件进行修改时,确定所述修改请求需要修改的请求控件;
所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围,包括:
确定所述待修改界面中包含了所述请求控件的至少一个目标控件;
将每个所述目标控件的控制开关对应的修改范围以及所述请求控件的控制开关对应的修改范围作为所述目标修改范围。
3.根据权利要求2所述的方法,其特征在于,
所述预先为待修改界面设置至少一个控制开关,包括:
为所述待修改界面设置至少一个辅助控制开关,每个所述辅助控制开关对应至少一个控件,所述辅助控制开关对应的修改范围是所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关打开时,允许修改所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关关闭时,不允许修改所述辅助控制开关对应的所述至少一个控件;
所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围,包括:
根据每个所述辅助控制开关对应的至少一个控件,判断是否存在对应的至少一个控件中包含了所述请求控件的至少一个目标辅助控制开关,如果是,则将每个所述目标辅助控制开关对应的修改范围作为所述目标修改范围。
4.根据权利要求2所述的方法,其特征在于,
所述预先为待修改界面设置至少一个控制开关,包括:
设置至少一个布局控制开关,每个所述布局控制开关对应一个容器控件,所述布局控制开关对应的修改范围是所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关打开时,允许修改所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关关闭时,不允许修改所述布局控制开关对应的所述容器控件的布局;
所述确定所述修改请求的请求范围,包括:
当所述修改请求是对控件的布局进行修改时,确定所述修改请求需要修改的布局容器控件的布局;
所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围,包括:
将所述布局容器控件的布局作为所述目标修改范围。
5.根据权利要求2-4中任一所述的方法,其特征在于,
所述预先设置针对所述待修改界面的控制规则,包括:
设置每个属性的默认控制规则;
设置至少一个属性控制规则,每个所述属性控制规则对应一个属性,所述属性包括:所述明细控件的属性、所述容器控件的属性;
设置至少一个通配控制规则,其中,每个所述通配控制规则对应一个所述容器控件,所述通配控制规则是针对对应的所述容器控件中的至少一个控件的至少一个属性的规则;
所述根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作,包括:
A1:确定所述修改请求需要修改的所述请求控件中的请求属性;
A2:判断是否存在针对所述请求属性的属性控制规则,如果是,则执行A3,否则,执行A4;
A3:判断针对所述请求属性的属性控制规则是否允许修改所述请求属性,如果是,则执行S6,否则,执行S7;
A4:判断是否存在对应的至少一个属性中包括所述请求属性的通配控制规则,如果是,则执行A5,否则,执行A6;
A5:判断对应的至少一个属性中包括所述请求属性的通配控制规则是否运行修改所述请求属性,如果是,则执行S6,否则,执行S7;
A6:判断所述请求属性对应的所述默认控制规则是否运行修改所述请求属性,如果是,则执行S6,否则,执行S7。
6.一种对界面进行修改的装置,其特征在于,包括:
开关设置单元,用于为待修改界面设置至少一个控制开关,每个所述控制开关对应一个修改范围,当所述控制开关打开时,允许修改对应的修改范围,当所述控制开关关闭时,不允许修改对应的修改范围;
规则设置单元,用于设置针对所述待修改界面的控制规则;
开关控制单元,用于根据所述控制规则,设置所述至少一个控制开关的打开或关闭;
修改控制单元,用于执行:
S1:接收外部输入的针对所述待修改界面的修改请求;
S2:确定所述修改请求的请求范围;
S3:从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围;
S4:判断每个所述目标修改范围对应的目标开关是否均打开,如果是,则执行S5;
S5:根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作,如果是,则执行S6,否则,执行S7;
S6:执行所述修改请求对应的修改操作,根据所述修改操作对所述待修改界面进行修改;
S7:禁止执行所述修改请求对应的修改操作。
7.根据权利要求6所述的装置,其特征在于,
所述至少一个控制开关包括:根控制开关、至少一个明细控制开关和至少一个容器控制开关;
所述开关设置单元,用于执行:
将所述待修改界面作为根容器控件,为所述根容器控件设置所述根控制开关,其中,所述根容器控件的所述根控制开关对应的修改范围是所述根容器控件,当所述根控制开关打开时,允许修改所述根容器控件以及所述根容器控件中的控件,当所述根控制开关关闭时,不允许修改所述根容器控件以及所述根容器控件中的控件;
为所述待修改界面中的至少一个明细控件分别设置对应的明细控制开关,其中,所述明细控件为不包含其他控件的控件,所述明细控件的所述明细控制开关对应的修改范围是所述明细控件,当所述明细控制开关打开时,允许修改所述明细控件,当所述明细控件开关关闭时,不允许修改所述明细控件;
为所述待修改界面中的至少一个容器控件分别设置对应的容器控制开关,其中,所述容器控件为包括其他控件的控件,所述容器控件的所述容器控制开关对应的修改范围是所述容器控件以及所述容器控件中的控件,当所述容器控制开关打开时,允许修改所述容器控件以及所述容器控件中的控件,当所述容器控件开关关闭时,不允许修改所述容器控件以及所述容器控件中的控件;
所述修改控制单元,在执行所述确定所述修改请求的请求范围时,具体用于:
当所述修改请求是对控件进行修改时,确定所述修改请求需要修改的请求控件;
所述修改控制单元,在执行所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围时,具体用于:
确定所述待修改界面中包含了所述请求控件的至少一个目标控件;
将每个所述目标控件的控制开关对应的修改范围以及所述请求控件的控制开关对应的修改范围作为所述目标修改范围。
8.根据权利要求7所述的装置,其特征在于,
所述开关设置单元,用于执行:
为所述待修改界面设置至少一个辅助控制开关,每个所述辅助控制开关对应至少一个控件,所述辅助控制开关对应的修改范围是所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关打开时,允许修改所述辅助控制开关对应的所述至少一个控件,当所述辅助控制开关关闭时,不允许修改所述辅助控制开关对应的所述至少一个控件;
所述修改控制单元,在执行所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围时,具体用于:
根据每个所述辅助控制开关对应的至少一个控件,判断是否存在对应的至少一个控件中包含了所述请求控件的至少一个目标辅助控制开关,如果是,则将每个所述目标辅助控制开关对应的修改范围作为所述目标修改范围。
9.根据权利要求7所述的装置,其特征在于,
所述开关设置单元,用于执行:
设置至少一个布局控制开关,每个所述布局控制开关对应一个容器控件,所述布局控制开关对应的修改范围是所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关打开时,允许修改所述布局控制开关对应的所述容器控件的布局,当所述布局控制开关关闭时,不允许修改所述布局控制开关对应的所述容器控件的布局;
所述修改控制单元,在执行所述确定所述修改请求的请求范围时,具体用于:
当所述修改请求是对控件的布局进行修改时,确定所述修改请求需要修改的布局容器控件的布局;
所述修改控制单元,在执行所述从至少一个所述修改范围中,确定包含了所述请求范围的至少一个目标修改范围时,具体用于:将所述布局容器控件的布局作为所述目标修改范围。
10.根据权利要求7-9中任一所述的装置,其特征在于,
所述规则设置单元,用于执行:
设置每个属性的默认控制规则;
设置至少一个属性控制规则,每个所述属性控制规则对应一个属性,所述属性包括:所述明细控件的属性、所述容器控件的属性;
设置至少一个通配控制规则,其中,每个所述通配控制规则对应一个所述容器控件,所述通配控制规则是针对对应的所述容器控件中的至少一个控件的至少一个属性的规则;
所述修改控制单元,在执行所述根据所述控制规则,判断是否允许执行所述修改请求对应的修改操作时,具体用于:
A1:确定所述修改请求需要修改的所述请求控件中的请求属性;
A2:判断是否存在针对所述请求属性的属性控制规则,如果是,则执行
A3,否则,执行A4;
A3:判断针对所述请求属性的属性控制规则是否允许修改所述请求属性,如果是,则执行S6,否则,执行S7;
A4:判断是否存在对应的至少一个属性中包括所述请求属性的通配控制规则,如果是,则执行A5,否则,执行A6;
A5:判断对应的至少一个属性中包括所述请求属性的通配控制规则是否运行修改所述请求属性,如果是,则执行S6,否则,执行S7;
A6:判断所述请求属性对应的所述默认控制规则是否运行修改所述请求属性,如果是,则执行S6,否则,执行S7。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810004115.6A CN108304181A (zh) | 2018-01-03 | 2018-01-03 | 一种对界面进行修改的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810004115.6A CN108304181A (zh) | 2018-01-03 | 2018-01-03 | 一种对界面进行修改的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108304181A true CN108304181A (zh) | 2018-07-20 |
Family
ID=62867964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810004115.6A Pending CN108304181A (zh) | 2018-01-03 | 2018-01-03 | 一种对界面进行修改的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108304181A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110457666A (zh) * | 2019-08-19 | 2019-11-15 | 亿企赢网络科技有限公司 | 一种报表生成方法、系统及电子设备和存储介质 |
CN111459482A (zh) * | 2020-03-27 | 2020-07-28 | 山东浪潮通软信息科技有限公司 | 一种界面定制控制方法、系统和软件 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101702126A (zh) * | 2009-12-04 | 2010-05-05 | 金蝶软件(中国)有限公司 | 一种图形界面编辑方法及装置 |
US20120079451A1 (en) * | 2010-09-29 | 2012-03-29 | Sap Ag | Unified process to design, develop, and configure user interfaces |
CN105912314A (zh) * | 2015-12-28 | 2016-08-31 | 乐视致新电子科技(天津)有限公司 | 用户界面控件的布局方法及系统、控制方法及系统 |
CN106155661A (zh) * | 2015-04-14 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种控件接入方法及装置 |
CN106843891A (zh) * | 2017-02-06 | 2017-06-13 | 浪潮通用软件有限公司 | 一种基于增量的表单分层扩展方法 |
-
2018
- 2018-01-03 CN CN201810004115.6A patent/CN108304181A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101702126A (zh) * | 2009-12-04 | 2010-05-05 | 金蝶软件(中国)有限公司 | 一种图形界面编辑方法及装置 |
US20120079451A1 (en) * | 2010-09-29 | 2012-03-29 | Sap Ag | Unified process to design, develop, and configure user interfaces |
CN106155661A (zh) * | 2015-04-14 | 2016-11-23 | 阿里巴巴集团控股有限公司 | 一种控件接入方法及装置 |
CN105912314A (zh) * | 2015-12-28 | 2016-08-31 | 乐视致新电子科技(天津)有限公司 | 用户界面控件的布局方法及系统、控制方法及系统 |
CN106843891A (zh) * | 2017-02-06 | 2017-06-13 | 浪潮通用软件有限公司 | 一种基于增量的表单分层扩展方法 |
Non-Patent Citations (1)
Title |
---|
李双群 等: "人机界面设计编辑系统的设计与研究", 《福建电脑》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110457666A (zh) * | 2019-08-19 | 2019-11-15 | 亿企赢网络科技有限公司 | 一种报表生成方法、系统及电子设备和存储介质 |
CN110457666B (zh) * | 2019-08-19 | 2023-09-01 | 亿企赢网络科技有限公司 | 一种报表生成方法、系统及电子设备和存储介质 |
CN111459482A (zh) * | 2020-03-27 | 2020-07-28 | 山东浪潮通软信息科技有限公司 | 一种界面定制控制方法、系统和软件 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hofmann et al. | Greater than the sum of its PARTs: Expressing and reusing design intent in 3D models | |
Fu et al. | Putting AI in entertainment: An AI authoring tool for simulation and games | |
JPH09510034A (ja) | コンピューターヒューマンインタフェースにおいて文書パーツとエディタとを結合するシステム | |
CN108304181A (zh) | 一种对界面进行修改的方法及装置 | |
Marcotte et al. | Behavior trees for modelling artificial intelligence in games: A tutorial | |
CN107766310A (zh) | 一种网格单元格编辑方法及装置 | |
KR20210110604A (ko) | 자연 솔루션 언어 | |
CN110442826A (zh) | 基于页面标识的跨层级页面跳转方法、装置和系统 | |
JP5005172B2 (ja) | データベース管理システムおよびデータベース管理方法 | |
US11687785B2 (en) | Modification of neural network topology | |
Murphy et al. | Human in the loop fuzzy pattern tree evolution | |
US20030079200A1 (en) | Using nodes for representing hyper-edges in process models | |
CN103955368B (zh) | 一种软件模糊自适应支撑系统和开发方法 | |
KR20200144296A (ko) | 딥러닝 모델의 병렬 트레이닝 방법 및 장치 | |
US20160350656A1 (en) | Cognitive agent for executing cognitive rules | |
US20160246613A1 (en) | Guided Authoring of Interactive Content | |
Cockton | Some Critical Remarks on Abstractions for Adaptable Dialogue Managers. | |
CN114996898B (zh) | 基于SysML活动图的核工程设计功能分配方法及系统 | |
JP5407718B2 (ja) | 検証用データ作成方法,及び、検証用データ作成プログラム | |
WO2022087866A1 (zh) | 人工智能ai芯片的控制装置、控制方法及控制器 | |
Takeda et al. | MERA: Meta language for software engineering | |
Hauptman et al. | Adaptive Autonomy as a Means for Implementing Shared Ethics in Human-AI Teams | |
Navarre et al. | Task models and system models as a bridge between HCI and software engineering | |
Lyamin et al. | An automata model for an adaptive course development | |
CN117539468B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180720 |