CN105988816A - 软件界面布局的调整方法和装置 - Google Patents
软件界面布局的调整方法和装置 Download PDFInfo
- Publication number
- CN105988816A CN105988816A CN201510098159.6A CN201510098159A CN105988816A CN 105988816 A CN105988816 A CN 105988816A CN 201510098159 A CN201510098159 A CN 201510098159A CN 105988816 A CN105988816 A CN 105988816A
- Authority
- CN
- China
- Prior art keywords
- control
- information
- node
- software interface
- mobile
- 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
Abstract
本发明提供了一种软件界面布局的调整方法和装置。该方法包括:接收用户发送的软件界面的布局调整操作信息;根据布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,其中,相关节点信息包括:组成结构和/或节点描述信息。以便向用户显示调整后的软件界面布局。实现了能够针对不同用户需求,对软件界面布局进行调整,增强了软件界面的灵活性,并节省了软件界面显示资源。
Description
技术领域
本发明实施例涉及软件应用领域,尤其涉及一种软件界面布局的调整方法和装置。
背景技术
随着互联网技术的高速发展,各种类型的软件应运而生。软件的开发过程中,不仅对软件的功能提出更高的要求,由于软件界面是软件的窗口,是用户操作软件并获得反馈的媒介。所以,在软件的开发过程中,对软件界面的设计,如软件界面的美观程度和实用性等方面也提出了更高的要求。
为了便于用户与软件界面的交互,现有的大部分软件界面完全是由控件组成的。用户通过与软件界面中控件的交互,实现软件的功能。但现有的完全由控件组成的软件界面中,大量控件无规则地进行堆积,导致了界面显示资源的浪费。并且针对不同的用户,用户对软件功能的侧重点不同,大量控件无规则地进行堆积的软件界面导致软件界面冗余复杂,不能针对不同用户的需求对软件界面进行布局,使软件界面的灵活性较差。
发明内容
本发明实施例提供一种软件界面布局的调整方法和装置。实现了能够针对不同用户需求,对软件界面布局进行调整,增强了软件界面的灵活性,并节省了软件界面显示资源。
本发明实施例提供一种软件界面布局的调整方法,包括:
接收用户发送的软件界面的布局调整操作信息;
根据所述布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,其中,所述相关节点信息包括:组成结构和/或节点描述信息。
本发明实施例提供一种软件界面布局的调整装置,包括:
接收模块,用于接收用户发送的软件界面的布局调整操作信息;
调整模块,用于根据所述布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,其中,所述相关节点信息包括:组成结构和/或节点描述信息。
本发明实施例提供一种软件界面布局的调整方法和装置,通过接收用户发送的软件界面的布局调整操作信息;根据布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,其中,相关节点信息包括:组成结构和/或节点描述信息。以便向用户显示调整后的软件界面布局。实现了能够针对不同用户需求,对软件界面布局进行调整,增强了软件界面的灵活性,并节省了软件界面显示资源。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明软件界面布局的调整方法实施例一的流程图;
图2为本发明实施例一中软件界面布局的结构示意图;
图3为本发明软件界面布局的调整方法实施例二的第一流程图;
图4为本发明实施例二中界面布局描述信息的二叉树存储结构示意图;
图5为本发明软件界面布局的调整方法实施例二的第二流程图;
图6为本发明实施例二中布局调整操作信息为添加控件信息对应的二叉树存储的第一结构示意图;
图7为本发明实施例二中布局调整操作信息为添加控件信息对应的二叉树存储的第二结构示意图;
图8为本发明软件界面布局的调整方法实施例二的第三流程图;
图9为本发明实施例二中布局调整操作信息为删除控件信息对应的二叉树存储的结构示意图;
图10为本发明软件界面布局的调整方法实施例二的第四流程图;
图11为本发明实施例二中布局调整操作信息为移动控件信息对应的二叉树存储的结构示意图;
图12为本发明软件界面布局的调整装置实施例一的结构示意图;
图13为本发明软件界面布局的调整装置实施例二的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明软件界面布局的调整方法实施例一的流程图,如图1所示,本实施例的执行主体为具有存储和处理功能的终端设备,如计算机,笔记本电脑等,具体可通过软件的方式实现,该方法包括:
步骤101,接收用户发送的软件界面的布局调整操作信息。
本实施例中,如图2所示,软件界面是通过矩形控件铺满的,软件界面上显示的控件可以为输入框,面板,窗口等,本实施例中不做限定。其中,图2中未显示矩形控件的控件内容。
本实施例中,软件界面的布局调整操作信息包括所有对软件界面布局进行调整操作的信息,如对多个控件面积进行调整的信息,对软件界面面积进行调整的信息,向软件界面增加一个或多个控件的信息,从软件界面删除一个或多个控件的信息,对软件界面中的一个或多个控件进行移动的信息等。
步骤102,根据布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息。
其中,相关节点信息包括:组成结构和/或节点描述信息。
本实施例中,软件界面布局描述信息包括二叉树中各个节点之间的组成结构以及每个节点的描述信息。
具体地,各节点之间的组成结构即为各节点之间的层级关系。第一层节点只有一个节点,其为二叉树的根节点,表示软件界面窗口,第二层节点为第一层节点的左右孩子节点,以此类推,当节点没有左右孩子节点时,该节点为二叉树的叶子节点。二叉树中除叶子节点以外的节点都为二叉树的非叶子节点,非叶子节点为叶子节点的上层节点。其中,非叶子节点与软件界面中不显示控件具体内容的控件相对应,叶子节点与软件界面中显示控件具体内容的控件相对应。
软件界面布局描述信息中每个节点的节点描述信息会根据节点是否为叶子节点,其节点描述信息会不同。具体地,若二叉树中节点为非叶子节点,则该节点的节点描述信息包括:该节点对应控件或软件界面窗口的位置信息,该节点的左右孩子节点对应控件的分割区域面积比信息和分割方式信息。若二叉树中节点为叶子节点,则该节点的描述信息包括:该节点对应控件的控件内容信息,控件内容信息包括:控件的类型信息,控件的显示数据信息和控件的显示数据控制信息。
本实施例中,二叉树中的非叶子节点中的左右孩子节点对应控件的分割方式信息包括上下分割方式或左右分割方式,当分割方式信息为上下分割方式时,则该非叶子节点的左孩子节点对应的控件区域位于该非叶子节点对应控件区域的上半部,该非叶子节点的右孩子节点对应的控件区域位于该非叶子节点对应控件区域的下半部。当分割方式信息为左右分割方式时,则该非叶子节点的左孩子节点对应的控件区域位于该非叶子节点对应控件区域的左半部,该非叶子节点的右孩子节点对应的控件区域位于该非叶子节点对应控件区域的右半部。
本实施例中,根据软件界面布局描述信息可唯一确定软件界面布局,即在软件界面中各叶子节点对应控件的显示位置,面积及显示内容。
本实施例中,根据用户具体的布局调整操作信息的不同,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息也会不同。
举例说明为:如用户发送的具体的布局调整操作信息为控件面积调整信息,则根据控件面积调整信息,调整的是二叉树中与面积调整控件相关的节点信息中的节点描述信息。又如用户发送的具体的布局调整操作信息为添加控件信息,则根据布局调整操作信息,调整的是二叉树中与添加的控件相关的节点信息中的组成结构和节点描述信息。
本实施例中,根据布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,以向用户显示调整后的软件界面布局。
本实施例中,通过接收用户发送的软件界面的布局调整操作信息;根据布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,其中,相关节点信息包括:组成结构和/或节点描述信息。以便向用户显示调整后的软件界面布局。实现了能够针对不同用户需求,对软件界面布局进行调整,增强了软件界面的灵活性,并节省了软件界面显示资源。
图3为本发明软件界面布局的调整方法实施例二的第一流程图,如图3所示,本实施例的执行主体为具有存储和处理功能的终端设备,如计算机,笔记本电脑等,具体可通过软件的方式实现,该方法包括:
步骤201,接收用户发送的软件界面开启指令。
本实施例中,接收用户通过鼠标或键盘发送的软件界面开启指令。
步骤202,根据软件界面开启指令,读取软件界面布局描述信息,以便向用户显示预设的软件界面布局。
本实施例中,通过标准化和可扩展化的上下层接口,读取以二叉树形式存储的软件界面布局描述信息。
其中,软件界面布局描述信息包括二叉树中各个节点之间的组成结构以及每个节点的描述信息。各节点之间的组成结构即为各节点之间的层级关系。每个节点的节点描述信息会根据节点是否为叶子节点,其节点的节点描述信息也不同。
具体地,图4为本发明实施例二中界面布局描述信息的二叉树存储结构示意图,图4为图2中显示的软件界面布局相应的界面描述信息的二叉树存储的结构示意图。根据图2中软件界面布局的结构示意图的不同,图4也会相应的改变。如图4所示,该软件界面布局描述信息对应的二叉树的第一层节点为根节点A,其表示软件界面窗口,其左右孩子节点为节点B和节点C,A为非叶子节点,存储了软件界面窗口的位置信息,左右孩子节点B和C对应控件的分割区域面积比信息和分割方式信息。其中,左右孩子节点B和C对应控件的分割区域面积比信息为4:5,分割方式信息为左右分割方式。第二层节点为B和C,节点B表示节点B对应控件,节点B的左右孩子节点为节点D和节点E,B为非叶子节点,B存储了对应控件的位置信息,其左右孩子节点D和E对应控件的分割区域面积比信息和分割方式信息。其中,D和E对应控件的分割区域面积比信息为2:3,分割方式信息为上下分割方式。节点C表示节点C对应控件,节点C没有左右孩子节点,其为叶子节点,节点C存储的节点描述信息为节点C对应控件的控件内容信息,控件内容信息包括:控件的类型信息,控件的显示数据信息和控件的显示数据控制信息。第三层节点为节点D和节点E,节点D表示节点D对应控件,节点D的左右孩子节点为节点F和节点G,D为非叶子节点,D存储了对应控件的位置信息,其左右孩子节点F和G对应控件的分割区域面积比信息和分割方式信息。其中,F和G对应控件的分割区域面积比信息为1:1,分割方式信息为左右分割方式。节点E表示节点E对应控件,节点E没有左右孩子节点,其为叶子节点,节点E存储的节点描述信息为节点E对应控件的控件内容信息,控件内容信息包括:控件的类型信息,控件的显示数据信息和控件的显示数据控制信息。第四层节点为节点F和节点G,节点F表示节点F对应控件,节点G表示节点G对应控件,节点F和节点G为叶子节点,节点F存储的节点描述信息为节点F对应控件的控件内容信息,控件内容信息包括:控件的类型信息,控件的显示数据信息和控件的显示数据控制信息。节点G存储的节点描述信息为节点G对应控件的控件内容信息,控件内容信息包括:控件的类型信息,控件的显示数据信息和控件的显示数据控制信息。
本实施例中,根据软件界面布局描述信息中的非叶子节点对应控件或软件界面窗口的位置信息,非叶子节点的左右孩子节点对应控件的分割区域面积比信息和分割方式信息,可确定出最终的叶子节点在软件界面上的位置及对应的面积,通过叶子节点的节点描述信息可确定出最终的叶子节点对应的控件在软件界面上显示的控件的具体内容。
本实施例中,根据软件界面布局描述信息可唯一确定软件界面布局,即软件界面的显示位置,面积及各叶子节点对应控件的显示位置,面积及显示内容。
本实施例中,预设的软件界面布局为将最常使用的控件通过矩形输入框,面板或窗口铺满软件界面。
步骤203,接收用户发送的软件界面的布局调整操作信息。
本实施例中,接收用户通过鼠标或键盘发送的软件界面的布局调整操作信息。针对不同的用户,用户对软件界面中的控件需求不同,当用户需要对软件界面布局进行调整时,发送软件界面的布局调整操作信息。
本实施例中,根据用户不同的需求,布局调整操作信息包括:控件面积调整信息,界面面积调整信息,添加控件信息,删除控件信息和移动控件信息。
步骤204,根据布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息。
其中,相关节点信息包括:组成结构和/或节点描述信息。
具体地,本实施例中,根据不同的布局调整操作信息,对二叉树中存储的软件界面布局描述信息中的相关节点信息调整也是不同的。
进一步地,若布局调整操作信息为控件面积调整信息,则根据布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息具体为:
根据控件面积调整信息,调整二叉树中面积调整相应节点的最小公共逻辑父节点中节点描述信息的左右孩子节点对应控件的分割区域面积比信息。
其中,最小公共逻辑父节点为调节面积涉及到的控件对应节点的公共逻辑父节点。
举例说明为:用户通过鼠标拖动图2中控件F、G、E之间的分割线发送软件界面的控件面积调整信息,使F、G、E之间的面积比为1:1:2。在接收到F、G、E之间控件面积调整信息后,确定F、G、E的最小公共逻辑父节点为B,则通过调整二叉树中相关节点B中节点描述信息的左右孩子节点D和E对应控件的分割区域面积比信息,使B中节点描述信息的左右孩子节点D和E对应控件的分割区域面积比为1:1,向用户显示调整后的软件界面布局。
进一步地,若布局调整操作信息为界面面积调整信息,则根据所述布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息为:
根据界面面积调整信息,调整二叉树中各个非叶子节点的节点描述信息中相应非叶子节点的位置信息。
举例说明为:在图2中,用户通过鼠标拖动整个软件的边界线发送界面面积调整信息,使整个软件界面面积变为原来的2倍。在接收到界面面积调整信息后,调整各非叶子节点的节点描述信息中相应非叶子节点的位置信息。即调整节点A、节点B、节点D中的非叶子节点的位置信息,使向用户显示调整后的软件界面布局。在调整后的软件界面布局中,由于只改变了非叶子节点的位置信息,未改变非叶子节点中的左右孩子节点的对应控件的分割区域面积比信息和分割方式信息,未改变叶子节点中对应控件的内容信息,所以调整后的软件界面布局中,软件界面窗口以及各控件对应的区域面积变为了原来的2倍。
进一步地,若布局调整操作信息为添加控件信息,则步骤204可分为以下三个步骤进行,如图5所示。
步骤204a1,根据接收控件或软件界面窗口的标识信息和容纳添加控件的停靠区域信息,将二叉树中接收控件或软件界面窗口对应的节点修改为添加控件逻辑父节点。
本实施例中的接收控件对应的节点为二叉树中的叶子节点。
本实施例中,用户通过鼠标将软件控件列表中要添加的控件拖动到软件界面中,接收到鼠标拖动添加控件到软件界面的信息后,鼠标所在软件界面窗口或接收控件的四周显示四个方向的停靠箭头,接收到用户将添加控件拖动到停靠箭头上后,向用户显示容纳添加控件的停靠区域。
若鼠标拖动添加控件到接收控件上时,则根据接收控件的标识信息和容纳添加控件的停靠区域信息,将二叉树中接收控件对应的节点修改为添加控件逻辑父节点。
本实施例中,在将二叉树中接收控件对应的节点修改为添加控件逻辑父节点后,修改添加控件逻辑父节点的父节点的左孩子节点或右孩子节点的标识信息。
举例说明为:如图6所示,向图2中的C控件区域的下方容纳添加控件的停靠区域添加控件H,鼠标拖动添加控件H到接收控件C上的下方停靠区域时,则根据接收控件C的标识信息和容纳添加控件的停靠区域信息,将二叉树中接收控件对应的节点C修改为添加控件H逻辑父节点C1,并修改C1的父节点A1的右孩子节点的标识信息为C1的标识信息。
若鼠标拖动添加控件到软件界面窗口上时,则根据软件界面窗口的标识信息和容纳添加控件的停靠区域信息,将二叉树中软件界面窗口对应的节点修改为添加控件逻辑父节点。
举例说明为:如图7所示,向图2中的软件界面窗口的下方容纳添加控件的停靠区域添加控件H,鼠标拖动添加控件H到软件界面窗口下方的容纳添加控件的停靠区域上时,则根据软件界面窗口的标识信息和容纳添加控件的停靠区域信息,将二叉树中软件界面窗口对应的节点A修改为添加控件H逻辑父节点A1。
步骤204a2,计算容纳添加控件的停靠区域与除容纳添加控件的停靠区域外的接收控件或软件界面窗口的其他区域的添加控件面积比,将添加控件面积比信息、添加控件分割方式信息和接收控件或软件界面窗口的位置信息作为添加控件逻辑父节点的节点描述信息。
本实施例中,若容纳添加控件的停靠区域为接收控件的停靠区域,则计算容纳添加控件的停靠区域与除容纳添加控件的停靠区域外的接收控件的其他区域的添加控件面积比,并根据容纳添加控件的停靠区域具体为接收控件的哪个方位的停靠区域,确定添加控件的分割方式信息。
本实施例中,接收控件中的每个方位的停靠区域与除容纳添加控件的停靠区域外的接收控件的其他区域的添加控件面积比可预先设定。如设定添加控件面积比为1:1。
将添加控件面积比信息、添加控件分割方式信息和接收控件的位置信息作为添加控件逻辑父节点的节点描述信息。
举例说明为:如图6所示,向图2中的C控件区域的下方容纳添加控件的停靠区域添加控件H,鼠标拖动添加控件H到接收控件C的下方容纳添加控件的停靠区域后,计算容纳添加控件的停靠区域与除容纳添加控件的停靠区域外的接收控件C的其他区域的添加控件面积比为1:1,确定添加控件分割方式信息为上下分割方式,则将添加控件面积比信息、添加控件分割方式信息和接收控件的位置信息作为添加控件逻辑父节点C1的节点描述信息。
本实施例中,若容纳添加控件的停靠区域为软件界面窗口的停靠区域,则计算容纳添加控件的停靠区域与除容纳添加控件的停靠区域外的软件界面窗口的其他区域的添加控件面积比,并根据容纳添加控件的停靠区域具体为软件界面窗口的哪个方位的停靠区域,确定添加控件的分割方式信息。
本实施例中,软件界面窗口中的每个方位的停靠区域与除容纳添加控件的停靠区域外的软件界面窗口的其他区域的添加控件面积比可预先设定。如设定添加控件面积比为1:1。
将添加控件面积比信息、添加控件分割方式信息和接收控件的位置信息作为添加控件逻辑父节点的节点描述信息。
举例说明为:如图7所示,向图2中的软件界面窗口区域的左方容纳添加控件的停靠区域添加控件H,鼠标拖动添加控件H到软件界面窗口的左方容纳添加控件的停靠区域后,计算容纳添加控件的停靠区域与除容纳添加控件的停靠区域外的软件界面窗口的其他区域的添加控件面积比为1:1,确定添加控件分割方式信息为左右分割方式,则将添加控件面积比信息、添加控件分割方式信息和接收控件的位置信息作为添加控件逻辑父节点A1的节点描述信息。
步骤204a3,根据添加控件标识信息,接收控件或软件界面窗口的标识信息,分别采集添加控件的控件内容信息,接收控件或软件界面窗口的节点描述信息,并根据添加控件分割方式信息将添加控件,接收控件或软件界面窗口创建为添加控件逻辑父节点的孩子节点。
本实施例中,根据添加控件标识信息,采集添加控件的控件内容信息,控件内容信息包括:控件的类型信息,控件的显示数据信息和控件的显示数据控制信息。
当鼠标拖动添加控件到接收控件上的容纳添加控件的停靠区域时,根据接收控件的标识信息,采集接收控件的节点描述信息,本实施例中的接收控件对应的节点为叶子节点,所以节点描述信息为接收控件的控件内容信息。
当鼠标拖动添加控件到软件界面窗口上的容纳添加控件的停靠区域时,根据软件界面窗口的标识信息,采集软件界面标识的节点描述信息,即采集软件界面窗口对应节点的位置信息,左右孩子节点对应控件的分割区域面积比信息和分割方式信息。
根据添加控件分割方式信息将添加控件,接收控件或软件界面窗口创建为添加控件逻辑父节点的孩子节点。若添加控件位于接收控件或软件界面窗口的上方停靠区域或左方停靠区域,则将添加控件创建为添加控件逻辑父节点的左孩子节点,将接收控件或软件界面窗口创建为添加控件逻辑父节点的右孩子节点,若添加控件位于接收控件或软件界面窗口的下方停靠区域或右方停靠区域,则将添加控件创建为添加控件逻辑父节点的右孩子节点,将接收控件或软件界面窗口创建为添加控件逻辑父节点的左孩子节点。
本实施例中,根据添加控件信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,以向用户显示添加控件后的软件界面布局后,还可以进一步地对添加控件的面积进行调整,以符合用户的使用需求。
进一步地,若布局调整操作信息为删除控件信息,则步骤204可分为以下三个步骤进行,如图8所示。
本实施例中,用户通过鼠标点击软件界面中的某控件的标题区域的关闭按钮或通过鼠标将软件界面中的某控件拖入垃圾控件的形式发送删除控件信息。
本实施例中,删除控件信息包括:删除控件的标识信息,删除控件逻辑父节点的标识信息和删除控件兄弟节点的标识信息。
步骤204b1,根据删除控件的标识信息,删除删除控件对应的节点及节点描述信息。
本实施例中,删除控件与二叉树中的叶子节点相对应,根据删除控件的标识信息,将二叉树中的删除控件对应的节点从二叉树中删除,并删除该删除控件对应节点的节点描述信息。由于删除的节点为叶子节点,所以节点描述信息为控件的内容信息。
步骤204b2,根据删除控件逻辑父节点的标识信息和删除控件兄弟节点的标识信息,将删除控件逻辑父节点替换为删除控件兄弟节点。
本实施例中,根据删除控件的逻辑父节点的标识信息和删除控件兄弟节点标识信息,将删除控件逻辑父节点替换为删除控件兄弟节点时。不仅将删除控件逻辑父节点与删除控件兄弟节点的层级关系进行替换,也将删除控件逻辑父节点与删除控件兄弟节点存储的节点描述信息进行替换。
举例说明为:如图9所示,将图2中控件E从软件界面中删除,则在二叉树中删除控件E对应节点E,并删除节点E的节点描述信息后,将删除控件E对应节点E的逻辑父节点B替换为删除控件E对应节点E的兄弟节点D。
本实施例中,根据删除控件信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,以向用户显示删除控件后的软件界面布局。
进一步地,若布局调整操作信息为移动控件信息,则步骤204可分为以下三个步骤进行,如图10所示:
本实施例中,用户在软件界面中通过鼠标将某一控件从一个位置移动到另一位置的形式发送移动控件信息。
本实施例中,移动控件信息包括:移动前控件信息和移动后控件信息。其中移动前控件信息包括:移动控件的标识信息,移动前移动控件逻辑父节点的标识信息和移动前移动控件兄弟节点的标识信息,移动后控件信息包括:移动后移动控件的接收控件或软件界面窗口的标识信息,容纳移动控件的停靠区域信息和移动控件的标识信息。
本实施例中,根据移动控件信息,调整调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,以向用户显示移动后的软件界面布局。实质上是对软件界面上的移动控件分别进行删除和添加操作。
步骤204c1,根据移动前控件信息,删除移动控件移动前对应的节点,并将移动前移动控件逻辑父节点修改为移动前移动控件兄弟节点。
本实施例中,根据移动前控件信息中移动控件的标识信息,删除移动控件移动前对应的节点及节点描述信息。
根据移动前控件信息中的移动前移动控件逻辑父节点的标识信息和移动前移动控件兄弟节点的标识信息,将移动前移动控件逻辑父节点替换为移动前移动控件兄弟节点。
本实施例中,根据移动前移动控件逻辑父节点的标识信息和移动前移动控件兄弟节点标识信息,将移动前移动控件逻辑父节点替换为移动前控件兄弟节点时,不仅将移动前移动控件逻辑父节点与移动前移动控件兄弟节点的层级关系进行替换,也将移动前移动控件逻辑父节点与移动前移动控件兄弟节点存储的节点描述信息进行替换。
步骤204c2,根据移动后控件信息,将移动后移动控件的接收控件或软件界面窗口对应的节点修改为移动后移动控件逻辑父节点,分别采集移动控件的控件内容信息,移动后移动控件的接收控件或软件界面窗口对应节点的节点描述信息,将移动控件、移动后移动控件的接收控件或软件界面窗口创建为移动后移动控件逻辑父节点的孩子节点。
本实施例中,根据移动后控件信息中的移动后移动控件的接收控件或软件界面窗口的标识信息和容纳添加控件的停靠区域信息,将二叉树中移动后移动控件的接收控件或软件界面窗口对应的节点修改为移动后移动控件逻辑父节点。
本实施例中,根据移动后控件信息中的移动后移动控件的接收控件或软件界面窗口的标识信息和容纳添加控件的停靠区域信息,将二叉树中移动后移动控件的接收控件或软件界面窗口对应的节点修改为移动后移动控件逻辑父节点的具体实现细节与本发明实施例二中步骤204a1-步骤204a2相似,在此不再一一赘述。
本实施例中,分别采集移动控件的控件内容信息,移动后移动控件的接收控件或软件界面窗口对应节点的节点描述信息,将移动控件、移动后移动控件的接收控件或软件界面窗口创建为移动后移动控件逻辑父节点的孩子节点的具体实现细节与本发明实施例二中步骤204a3相似,在此不再一一赘述。
举例说明为:如图11所示,将图2中软件界面的控件E从原位置移动到控件C右方的容纳移动控件C的停靠区域,则在二叉树中删除控件E移动前对应节点E,并删除控件E移动前节点的节点描述信息后,将移动控件E对应的移动前节点E的逻辑父节点B替换为移动前节点E的兄弟节点D。
在移动后的移动控件E的接收控件C右方出现停靠区域后,移动后移动控件E的接收控件C对应的节点C修改为移动后移动控件E逻辑父节点C1,分别采集移动控件E的控件内容信息,移动后移动控件E的接收控件C的节点描述信息,将移动控件E、移动后移动控件的接收控件C创建为移动后移动控件逻辑父节点C1的孩子节点。其中,移动控件E为移动后移动控件逻辑父节点C1的右孩子节点,移动后移动控件的接收控件C为移动后移动控件逻辑父节点C1的左孩子节点。
本实施例中,根据具体的布局调整操作信息,布局调整操作信息包括:控件面积调整信息,界面面积调整信息,添加控件信息,删除控件信息和移动控件信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,以向用户显示调整后的软件界面布局,由于软件界面描述信息以二叉树的形式进行存储,在调整软件界面布局时,只调整相关节点信息,使调整软件界面布局时更高效。
图12为本发明软件界面布局的调整装置实施例一的结构示意图,如图12所示,该装置包括接收模块1201和调整模块1202。
其中,接收模块1201,用于接收用户发送的软件界面的布局调整操作信息。调整模块1202,用于根据布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,其中,相关节点信息包括:组成结构和/或节点描述信息。
本实施例中,软件界面布局描述信息包括二叉树中各个节点之间的组成结构以及每个节点的描述信息。各节点之间的组成结构即为各节点之间的层级关系,软件界面布局描述信息中每个节点的节点描述信息会根据节点是否为叶子节点,其节点的描述信息会不同。若二叉树中节点为非叶子节点,则该节点的节点描述信息包括该节点对应控件或软件界面窗口的位置信息,该节点的左右孩子节点对应控件的分割区域面积比信息和分割方式信息。若二叉树中节点为叶子节点,则该节点的描述信息包括该节点对应控件的控件内容信息,控件内容信息包括:控件的类型信息,控件的显示数据信息和控件的显示数据控制信息。
本实施例的装置可以执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图13为本发明软件界面布局的调整装置实施例二的结构示意图;如图13所示,该装置包括:接收模块1301,调整模块1302和读取模块1303。
其中,接收模块1301,用于接收用户发送的软件界面的布局调整操作信息。调整模块1302,用于根据布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,其中,相关节点信息包括:组成结构和/或节点描述信息。
本实施例中,相关节点包括非叶子节点和叶子节点,若相关节点为非叶子节点,则相关节点的节点描述信息包括非叶子节点对应控件或软件界面窗口的位置信息,非叶子节点的左右孩子节点对应控件的分割区域面积比信息和分割方式信息;若相关节点为叶子节点,则相关节点的节点描述信息包括叶子节点对应控件的控件内容信息,控件内容信息包括:控件的类型信息,控件的显示数据信息和控件的显示数据控制信息。
进一步地,接收模块1301,还用于在接收模块接收用户发送的软件界面的布局调整操作信息之前,接收用户发送的软件界面开启指令。
读取模块1303,用于根据软件界面开启指令,读取软件界面布局描述信息,以便向用户显示预设的软件界面布局。
进一步地,布局调整操作信息为控件面积调整信息,调整模块1302,具体用于:根据控件面积调整信息,调整二叉树中面积调整相应节点的最小公共逻辑父节点中节点描述信息的左右孩子节点对应控件的分割区域面积比信息。
进一步地,布局调整操作信息为界面面积调整信息,调整模块1302,具体用于:根据界面面积调整信息,调整二叉树中各个非叶子节点的节点描述信息中相应非叶子节点的位置信息。
进一步地,布局调整操作信息为添加控件信息,添加控件信息包括:接收控件或软件界面窗口的标识信息,容纳添加控件的停靠区域信息和添加控件的标识信息,调整模块1302具体用于:
根据接收控件或软件界面窗口的标识信息和容纳添加控件的停靠区域信息,将二叉树中接收控件或软件界面窗口对应的节点修改为添加控件逻辑父节点;计算容纳添加控件的停靠区域与除容纳添加控件的停靠区域外的接收控件或软件界面窗口的其他区域的添加控件面积比,将添加控件面积比信息、添加控件分割方式信息和接收控件或软件界面窗口的位置信息作为添加控件逻辑父节点的节点描述信息;根据添加控件标识信息,接收控件或软件界面窗口的标识信息,分别采集添加控件的控件内容信息,接收控件或软件界面窗口的节点描述信息,并根据添加控件分割方式信息将添加控件,接收控件或软件界面窗口创建为添加控件逻辑父节点的孩子节点。
进一步地,布局调整操作信息为删除控件信息,删除控件信息包括:删除控件的标识信息,删除控件逻辑父节点的标识信息和删除控件兄弟节点的标识信息,调整模块1302,具体用于:
根据删除控件的标识信息,删除删除控件对应的节点及节点描述信息;根据删除控件逻辑父节点的标识信息和删除控件兄弟节点的标识信息,将删除控件逻辑父节点替换为删除控件兄弟节点。
进一步地,布局调整操作信息为移动控件信息,移动控件信息包括:移动前控件信息和移动后控件信息,调整模块1302,具体用于:
根据移动前控件信息,删除移动控件移动前对应的节点,并将移动前移动控件逻辑父节点修改为移动前移动控件兄弟节点;根据移动后控件信息,将移动后移动控件的接收控件或软件界面窗口对应的节点修改为移动后移动控件逻辑父节点,分别采集移动控件的控件内容信息,移动后移动控件的接收控件或软件界面窗口对应节点的节点描述信息,将移动控件、移动后移动控件的接收控件或软件界面窗口创建为移动后移动控件逻辑父节点的孩子节点。
本实施例的装置可以执行图3,图5,图8及图10所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (16)
1.一种软件界面布局的调整方法,其特征在于,包括:
接收用户发送的软件界面的布局调整操作信息;
根据所述布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,其中,所述相关节点信息包括:组成结构和/或节点描述信息。
2.根据权利要求1所述的方法,其特征在于,在所述接收用户发送的软件界面的布局调整操作信息之前,还包括:
接收用户发送的软件界面开启指令;
根据所述软件界面开启指令,读取所述软件界面布局描述信息,以便向所述用户显示预设的软件界面布局。
3.根据权利要求2所述的方法,其特征在于,所述相关节点包括非叶子节点和叶子节点,
若所述相关节点为非叶子节点,则所述相关节点的节点描述信息包括非叶子节点对应控件或软件界面窗口的位置信息,所述非叶子节点的左右孩子节点对应控件的分割区域面积比信息和分割方式信息;
若所述相关节点为叶子节点,则所述相关节点的节点描述信息包括叶子节点对应控件的控件内容信息,所述控件内容信息包括:控件的类型信息,控件的显示数据信息和控件的显示数据控制信息。
4.根据权利要求1或3所述的方法,其特征在于,所述布局调整操作信息为控件面积调整信息,
所述根据所述布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,具体包括:
根据所述控件面积调整信息,调整二叉树中面积调整相应节点的最小公共逻辑父节点中节点描述信息的左右孩子节点对应控件的分割区域面积比信息。
5.根据权利要求1或3所述的方法,其特征在于,所述布局调整操作信息为界面面积调整信息,
所述根据所述布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,具体包括:
根据所述界面面积调整信息,调整二叉树中各个非叶子节点的节点描述信息中相应非叶子节点的位置信息。
6.根据权利要求1或3所述的方法,其特征在于,所述布局调整操作信息为添加控件信息,所述添加控件信息包括:接收控件或软件界面窗口的标识信息,容纳添加控件的停靠区域信息和添加控件的标识信息,
所述根据所述布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,具体包括:
根据所述接收控件或软件界面窗口的标识信息和所述容纳添加控件的停靠区域信息,将所述二叉树中接收控件或软件界面窗口对应的节点修改为添加控件逻辑父节点;
计算容纳添加控件的停靠区域与除所述容纳添加控件的停靠区域外的接收控件或软件界面窗口的其他区域的添加控件面积比,将所述添加控件面积比信息、添加控件分割方式信息和所述接收控件或软件界面窗口的位置信息作为所述添加控件逻辑父节点的节点描述信息;
根据所述添加控件的标识信息,所述接收控件或软件界面窗口的标识信息,分别采集所述添加控件的控件内容信息,所述接收控件或软件界面窗口的节点描述信息,并根据所述添加控件分割方式信息将添加控件,接收控件或软件界面窗口创建为所述添加控件逻辑父节点的孩子节点。
7.根据权利要求1或3所述的方法,其特征在于,所述布局调整操作信息为删除控件信息,所述删除控件信息包括:删除控件的标识信息,删除控件逻辑父节点的标识信息和删除控件兄弟节点的标识信息,
所述根据所述布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,具体包括:
根据删除控件的标识信息,删除所述删除控件对应的节点及节点描述信息;
根据所述删除控件逻辑父节点的标识信息和删除控件兄弟节点的标识信息,将所述删除控件逻辑父节点替换为所述删除控件兄弟节点。
8.根据权利要求1或3所述的方法,其特征在于,所述布局调整操作信息为移动控件信息,所述移动控件信息包括:移动前控件信息和移动后控件信息,
所述根据所述布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,具体包括:
根据所述移动前控件信息,删除所述移动控件移动前对应的节点,并将移动前移动控件逻辑父节点修改为移动前移动控件兄弟节点;
根据所述移动后控件信息,将所述移动后移动控件的接收控件或软件界面窗口对应的节点修改为移动后移动控件逻辑父节点,分别采集所述移动控件的控件内容信息,所述移动后移动控件的接收控件或软件界面窗口对应节点的节点描述信息,将所述移动控件、所述移动后移动控件的接收控件或软件界面窗口创建为所述移动后移动控件逻辑父节点的孩子节点。
9.一种软件界面布局的调整装置,其特征在于,包括:
接收模块,用于接收用户发送的软件界面的布局调整操作信息;
调整模块,用于根据所述布局调整操作信息,调整以二叉树形式存储的软件界面布局描述信息中的相关节点信息,其中,所述相关节点信息包括:组成结构和/或节点描述信息。
10.根据权利要求9所述的装置,其特征在于,还包括读取模块,
所述接收模块,还用于在所述接收模块接收用户发送的软件界面的布局调整操作信息之前,接收用户发送的软件界面开启指令;
所述读取模块,用于根据所述软件界面开启指令,读取所述软件界面布局描述信息,以便向所述用户显示预设的软件界面布局。
11.根据权利要求10所述的装置,其特征在于,所述相关节点包括非叶子节点和叶子节点,
若所述相关节点为非叶子节点,则所述相关节点的节点描述信息包括非叶子节点对应控件或软件界面窗口的位置信息,所述非叶子节点的左右孩子节点对应控件的分割区域面积比信息和分割方式信息;
若所述相关节点为叶子节点,则所述相关节点的节点描述信息包括叶子节点对应控件的控件内容信息,所述控件内容信息包括:控件的类型信息,控件的显示数据信息和控件的显示数据控制信息。
12.根据权利要求9或11所述的装置,其特征在于,所述布局调整操作信息为控件面积调整信息,
所述调整模块,具体用于:
根据所述控件面积调整信息,调整二叉树中面积调整相应节点的最小公共逻辑父节点中节点描述信息的左右孩子节点对应控件的分割区域面积比信息。
13.根据权利要求9或11所述的装置,其特征在于,所述布局调整操作信息为界面面积调整信息,
所述调整模块,具体用于:
根据所述界面面积调整信息,调整二叉树中各个非叶子节点的节点描述信息中相应非叶子节点的位置信息。
14.根据权利要求9或11所述的装置,其特征在于,所述布局调整操作信息为添加控件信息,所述添加控件信息包括:接收控件或软件界面窗口的标识信息,容纳添加控件的停靠区域信息和添加控件的标识信息,
所述调整模块具体用于:
根据所述接收控件或软件界面窗口的标识信息和所述容纳添加控件的停靠区域信息,将所述二叉树中接收控件或软件界面窗口对应的节点修改为添加控件逻辑父节点;计算容纳添加控件的停靠区域与除所述容纳添加控件的停靠区域外的接收控件或软件界面窗口的其他区域的添加控件面积比,将所述添加控件面积比信息、添加控件分割方式信息和所述接收控件或软件界面窗口的位置信息作为所述添加控件逻辑父节点的节点描述信息;根据所述添加控件的标识信息,所述接收控件或软件界面窗口的标识信息,分别采集所述添加控件的控件内容信息,所述接收控件或软件界面窗口的节点描述信息,并根据所述添加控件分割方式信息将添加控件,接收控件或软件界面窗口创建为所述添加控件逻辑父节点的孩子节点。
15.根据权利要求9或11所述的装置,其特征在于,所述布局调整操作信息为删除控件信息,所述删除控件信息包括:删除控件的标识信息,删除控件逻辑父节点的标识信息和删除控件兄弟节点的标识信息,
所述调整模块,具体用于:
根据删除控件的标识信息,删除所述删除控件对应的节点及节点描述信息;根据所述删除控件逻辑父节点的标识信息和删除控件兄弟节点的标识信息,将所述删除控件逻辑父节点替换为所述删除控件兄弟节点。
16.根据权利要求9或11所述的装置,其特征在于,所述布局调整操作信息为移动控件信息,所述移动控件信息包括:移动前控件信息和移动后控件信息,
所述调整模块,具体用于:
根据所述移动前控件信息,删除所述移动控件移动前对应的节点,并将移动前移动控件逻辑父节点修改为移动前移动控件兄弟节点;根据所述移动后控件信息,将所述移动后移动控件的接收控件或软件界面窗口对应的节点修改为移动后移动控件逻辑父节点,分别采集所述移动控件的控件内容信息,所述移动后移动控件的接收控件或软件界面窗口对应节点的节点描述信息,将所述移动控件、所述移动后移动控件的接收控件或软件界面窗口创建为所述移动后移动控件逻辑父节点的孩子节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510098159.6A CN105988816A (zh) | 2015-03-05 | 2015-03-05 | 软件界面布局的调整方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510098159.6A CN105988816A (zh) | 2015-03-05 | 2015-03-05 | 软件界面布局的调整方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105988816A true CN105988816A (zh) | 2016-10-05 |
Family
ID=57038774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510098159.6A Pending CN105988816A (zh) | 2015-03-05 | 2015-03-05 | 软件界面布局的调整方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105988816A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107329893A (zh) * | 2017-06-21 | 2017-11-07 | 广州酷狗计算机科技有限公司 | 应用界面的遍历方法、装置及存储介质 |
CN107704546A (zh) * | 2017-09-26 | 2018-02-16 | 平安科技(深圳)有限公司 | 页面配置方法及服务器 |
CN107733680A (zh) * | 2017-05-19 | 2018-02-23 | 小草数语(北京)科技有限公司 | 网络图谱布局方法、装置及可视化设备 |
CN109165066A (zh) * | 2018-08-02 | 2019-01-08 | 五八有限公司 | 页面布局的调整方法、展示方法、装置、存储介质及终端 |
CN110096277A (zh) * | 2019-03-19 | 2019-08-06 | 北京三快在线科技有限公司 | 一种动态页面展示方法、装置、电子设备及存储介质 |
WO2022242439A1 (zh) * | 2021-05-17 | 2022-11-24 | 北京字跳网络技术有限公司 | 信息的处理方法、装置、终端和存储介质 |
-
2015
- 2015-03-05 CN CN201510098159.6A patent/CN105988816A/zh active Pending
Non-Patent Citations (1)
Title |
---|
覃焌翔等: "一种基于二叉树的自定义界面布局实现方法的研究", 《中国科技论文在线》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107733680A (zh) * | 2017-05-19 | 2018-02-23 | 小草数语(北京)科技有限公司 | 网络图谱布局方法、装置及可视化设备 |
CN107733680B (zh) * | 2017-05-19 | 2021-06-08 | 绿湾网络科技有限公司 | 网络图谱布局方法、装置及可视化设备 |
CN107329893A (zh) * | 2017-06-21 | 2017-11-07 | 广州酷狗计算机科技有限公司 | 应用界面的遍历方法、装置及存储介质 |
CN107704546A (zh) * | 2017-09-26 | 2018-02-16 | 平安科技(深圳)有限公司 | 页面配置方法及服务器 |
CN109165066A (zh) * | 2018-08-02 | 2019-01-08 | 五八有限公司 | 页面布局的调整方法、展示方法、装置、存储介质及终端 |
CN110096277A (zh) * | 2019-03-19 | 2019-08-06 | 北京三快在线科技有限公司 | 一种动态页面展示方法、装置、电子设备及存储介质 |
WO2022242439A1 (zh) * | 2021-05-17 | 2022-11-24 | 北京字跳网络技术有限公司 | 信息的处理方法、装置、终端和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105988816A (zh) | 软件界面布局的调整方法和装置 | |
CN102044083B (zh) | 基于用户定制维护图形显示的系统和方法 | |
US9971749B2 (en) | Editor for website and website menu | |
US8438495B1 (en) | Methods and systems for creating wireframes and managing containers | |
CN102750122B (zh) | 多画面显示控制方法、装置及系统 | |
CN101404152B (zh) | 信息显示装置 | |
US20150095882A1 (en) | Method for the utilization of environment media in a computing system | |
DE202016002908U1 (de) | Vorrichtungen zum Navigieren zwischen Benutzerschnittstellen | |
CN103399692A (zh) | 移动终端单手操作的方法及其移动终端 | |
CN103425485A (zh) | 面向普通用户应用的界面编辑、运行系统及方法 | |
AU2014263021A1 (en) | Variable dimension version editing for graphical designs | |
US20080028328A1 (en) | System and method to dynamically change object data patterns | |
CN106814949A (zh) | 一种cocos游戏编辑器控件界面管理方法 | |
AU2019325910A1 (en) | Multi-view masters for graphical designs | |
CN106201208A (zh) | 应用卡片的管理方法和装置 | |
CN106658139A (zh) | 一种焦点控制方法及装置 | |
CN108958861A (zh) | 基于文本控件的对象显示方法、设备及存储介质 | |
CN100395755C (zh) | 计算机中建立树状文件结构的方法 | |
CN106126254A (zh) | 一种关联的平视界面游戏编辑系统与方法 | |
CN104793927A (zh) | 一种界面编辑方法及装置 | |
CN104777962A (zh) | 一种动态效果互动的方法及移动终端 | |
CN100451957C (zh) | 电脑屏幕拆分与Windows应用程序窗口归属管理方法及装置 | |
CN105791927A (zh) | 一种手势控制智能电视方法及系统 | |
CN107770253A (zh) | 远程控制方法及系统 | |
CN104182129A (zh) | 一种数据列表编辑操作显示方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20161005 |