CN116339734A - 一种qt界面层级构建方法、装置、设备及存储介质 - Google Patents
一种qt界面层级构建方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116339734A CN116339734A CN202310335553.1A CN202310335553A CN116339734A CN 116339734 A CN116339734 A CN 116339734A CN 202310335553 A CN202310335553 A CN 202310335553A CN 116339734 A CN116339734 A CN 116339734A
- Authority
- CN
- China
- Prior art keywords
- interface
- frame
- frame interface
- instruction
- human
- 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
Images
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
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供了一种QT界面层级构建方法、装置、设备及存储介质,包括:响应于框架界面创建指令,根据框架界面创建指令创建初始化框架界面;若检测到人机交互界面显示指令,则根据人机交互界面显示指令获取人机交互界面的目标显示层;根据目标显示层获取初始化框架界面中的目标框架界面,并基于目标框架界面为父窗口组件创建人机交互界面控件对象;将人机交互界面控件对象添加于人机交互界面的目标显示层上。该方法通过创建初始化框架界面,并根据目标显示层获取初始化框架界面中的目标框架界面,基于目标框架界面创建人机交互界面控件对象,从而简化了界面层级管理。
Description
技术领域
本发明涉及计算机软件技术领域,尤其涉及一种QT界面层级构建方法、装置、设备及存储介质。
背景技术
随着界面应用的快速发展,QT作为跨平台软件开发框架,其应用十分广泛。并且随着计算机软件技术的快速发展,软件的界面越来越多,界面显示逻辑也越来越复杂,然而QT没有自带的界面层级管理逻辑。
目前,使用QT有四种控制界面层级的方法。
其中,第一种方法:通过调用QWidget的raise()方法将QWidget提升到父类的最顶层。
第二种方法:通过调用QWidget的lower()方法将QWidget降到父类的最底层。
第三种方法:通过调用QWidget的stackUnder(QWidget*)方法将QWidget降到参数的下层。
第四种方法:通过调用QWidget的setWindowFlags(Qt::WindowType,bool on=true)方法,传入参数Qt::WindowStayOnTopHint。
以上四种方法在有其他QWidget添加到它们的父类中时,原先界面显示后就会失效,使得每次在显示界面时都要采取上述调用QT控制界面层级的方法来管理界面层级,因而,较为繁琐。
发明内容
本发明实施例提供了一种QT界面层级构建方法、装置、设备及存储介质,旨在解决现有技术中界面层级管理繁琐的问题。
第一方面,本发明实施例提供了一种QT界面层级构建方法,其包括:
响应于框架界面创建指令,根据所述框架界面创建指令创建初始化框架界面;
若检测到人机交互界面显示指令,则根据所述人机交互界面显示指令获取人机交互界面的目标显示层;
根据所述目标显示层获取初始化框架界面中的目标框架界面,并基于所述目标框架界面为父窗口组件创建人机交互界面控件对象;
将所述人机交互界面控件对象添加于所述人机交互界面的目标显示层上。
第二方面,本发明实施例提供了一种QT界面层级构建装置,其包括:
第一创建单元,用于响应于框架界面创建指令,根据所述框架界面创建指令创建初始化框架界面;
获取单元,用于若检测到人机交互界面显示指令,则根据所述人机交互界面显示指令获取人机交互界面的目标显示层;
第二创建单元,用于根据所述目标显示层获取初始化框架界面中的目标框架界面,并基于所述目标框架界面为父窗口组件创建人机交互界面控件对象;
添加单元,用于将所述人机交互界面控件对象添加于所述人机交互界面的目标显示层上。
第三方面,本发明实施例又提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的QT界面层级构建方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现上述第一方面所述的QT界面层级构建方法。
本发明实施例提供了一种QT界面层级构建方法、装置、设备及存储介质,包括:响应于框架界面创建指令,根据所述框架界面创建指令创建初始化框架界面;若检测到人机交互界面显示指令,则根据所述人机交互界面显示指令获取人机交互界面的目标显示层;根据所述目标显示层获取初始化框架界面中的目标框架界面,并基于所述目标框架界面为父窗口组件创建人机交互界面控件对象;将所述人机交互界面控件对象添加于所述人机交互界面的目标显示层上。该方法通过创建初始化框架界面,并根据目标显示层获取初始化框架界面中的目标框架界面,基于目标框架界面创建人机交互界面控件对象,从而简化了界面层级管理。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的QT界面层级构建方法的流程示意图;
图2为本发明实施例提供的QT界面层级构建装置的示意性框图;
图3为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
本发明是一种由计算机程序来实现的技术方案,基于QT开发平台(QT是诺基亚开发的一个跨平台的C++图形用户界面应用程序框架。它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能。QT是完全面向对象的,很容易扩展,并且允许真正地组件编程)面向对象的C++类来构建具有交互界面的电子设备,如车载仪表盘中应用程序的用户界面(UI,User Interface),从而给用户提供更好的视觉体验。
请参阅图1,图1为本发明实施例提供的QT界面层级构建方法的流程示意图,该QT界面层级构建方法应用于具有人机交互界面的电子设备,该方法通过对安装于具有人机交互界面的电子设备中的应用程序进行执行。
如图1所示,该方法包括步骤S110~S140。
S110、响应于框架界面创建指令框架界面创建指令,根据所述框架界面创建指令创建初始化框架界面。
在本实施例中,当在对电子设备的应用程序的人机交互界面进行构建时,电子设备则会检测框架界面创建指令,以通过响应于该框架界面创建指令,执行该框架界面创建指令,并根据所述框架界面创建指令初始化创建多个框架界面,更具体地,所述多个框架界面至少包括两个框架界面,并通过多个框架界面的关联关系从而搭建初始化框架界面,以便后续创建人机交互界面控件对象。
在一实施例中,步骤S110包括:
获取所述框架界面创建指令对应的框架界面总层数;
基于所述框架界面总层数从下层至上层依次创建对应个数的框架界面以得到所述初始化框架界面;
其中,所述初始化框架界面每相邻两个框架界面中位于上层的框架界面以位于下层的框架界面为父窗口组件。
在本实施例中,在创建初始化框架界面前,需先获取所述框架界面创建指令,以得到所述框架界面创建指令对应的框架界面总层数;并根据所述框架界面总层数从下层至上层依次创建对应个数的框架界面,从而得到搭建好的初始化框架界面。并且所述初始化框架界面中每相邻的两个框架界面中设置于上层界面是基于下层的框架界面为父窗口组件进行创建的。
例如,若所述框架界面创建指令对应的框架界面总层数为3,则初始化框架界面中框架界面从下层至上层依次设置有第1框架界面、第2框架界面和第3框架界面,其中,通过所述框架界面创建指令,创建第1框架界面;获取所述第1框架界面,并基于所述第1框架界面为父窗口组件创建第2框架界面;获取所述第2框架界面,并基于所述第2框架界面为父窗口组件创建第3框架界面。
在一实施例中,所述基于所述框架界面总层数从下层至上层依次创建对应个数的框架界面以得到所述初始化框架界面,包括:
若确定所述框架界面总层数大于1,则响应于第1框架界面创建子指令,基于所述第1框架界面创建子指令对应创建第1框架界面;
响应于第i框架界面创建子指令,基于所述第i框架界面创建子指令对应创建第i框架界面;其中,i的初始值为2,且i的取值范围是[2,N],N表示所述框架界面总层数;
构建第i框架界面以第i-1框架界面为父窗口组件的关联关系;
将i增1以更新i的取值;
若确定i未超出N,则返回执行所述响应于第i框架界面创建子指令,基于所述第i框架界面创建子指令对应创建第i框架界面的步骤;
若确定i超出N,则获取第1框架界面至第N框架界面并组成所述初始化框架界面。
在本实施例中,所述框架界面创建指令包括多个框架界面创建子指令,并基于所述框架界面总层数依次类推创建对应个数的框架界面。
例如,当确定所述框架界面总层数为3,即所述框架界面总层数大于1时,响应于第1框架界面创建子指令,并基于所述第1框架界面创建子指令对应创建第一窗口组件对象,作为第1框架界面;且响应于第2框架界面创建子指令,以所述第2框架界面创建子指令对应创建第2框架界面;其中,构建第2框架界面以第1框架界面为父窗口组件进行创建的;此时,框架界面的个数未超出框架界面总层数,则将继续新增框架界面,从而执行响应于第3框架界面创建子指令,以所述第3框架界面创建子指令对应创建第3框架界面,其中,构建第3框架界面以第2框架界面为父窗口组件进行创建的。此时,框架界面的个数等于框架界面总层数,则获取第1框架界面至第3框架界面并组成所述初始化框架界面。
在一实施例中,步骤S110之后包括:
将所述初始化框架界面的框架界面总层数及各框架界面的界面名称信息进行显示。
在本实施例中,获取所述框架界面创建指令对应的框架界面总层数后,并基于框架界面总层数创建的初始化框架界面后,获取框架界面总层数中对应每个框架界面的界面名称,并以列表形式进行直观显示,以便用户查询。
S120、若检测到人机交互界面显示指令,则根据所述人机交互界面显示指令获取人机交互界面的目标显示层。
在本实施例中,搭建好初始化框架界面后,电子设备的应用程序检测到人机交互界面显示指令时,根据所述人机交互界面显示指令获取人机交互界面的目标显示层,实现对人机交互界面的显示位置进行定位,以便后续根据所述人机交互界面的目标显示层调用与之相对应的框架界面为父窗口组件创建界面控件对象。
在一实施例中,步骤S120包括:
若所述人机交互界面显示指令对应的显示层总数小于或等于所述框架界面总层数,则根据所述人机交互界面显示指令获取所述目标显示层;
若所述人机交互界面显示指令对应的显示总层数大于所述框架界面总层数,则基于所述人机交互界面显示指令对应的显示层总数更新所述初始化框架界面,并根据所述人机交互界面显示指令获取所述目标显示层。
在本实施例中,为了更好的构建初始化框架界面,可对其进行灵活更新,通过判断人机交互界面显示指令对应的显示层总数是否大于所述框架界面总层数;若是,则对所述初始化框架界面进行更新。即若检测到所述人机交互界面显示指令对应的显示层总数小于或等于所述框架界面总层数,则根据所述人机交互界面显示指令对应的显示层总数获取显示层中的目标显示层;若所述人机交互界面显示指令对应的显示总层数大于所述框架界面总层数,则基于所述人机交互界面显示指令对应的显示层总数更新所述初始化框架界面,并根据所述人机交互界面显示指令对应的显示层总数获取显示层中的所述目标显示层。从而使得所述人机交互界面显示指令对应的显示总层数与所述框架界面总层数相等,以实现对初始化框架界面的更新。
在一实施例中,所述基于所述人机交互界面显示指令对应的显示层总数更新所述初始化框架界面,包括:
获取所述人机交互界面显示指令对应的显示层总数与所述框架界面总层数的第一差值;
根据所述第一差值对应依次从下层至上层新增相同个数的框架界面。
在本实施例中,若人机交互界面显示指令所对应的显示层总数超过框架界面总层数,则基于所述人机交互界面显示指令对应的显示层总数与所述框架界面总层数的第一差值对应依次从下层至上层新增与所述第一差值相同个数的框架界面,以实现对所述初始化框架界面的更新。例如,当人机交互界面显示指令所对应的显示层总数为4,而框架界面总层数为3,可知两者差值为1,则以第3框架界面为父窗口组件创建窗口组件对象作为第4框架界面,从而由第1框架界面、第2框架界面和第3框架界面更新为由第1框架界面、第2框架界面、第3框架界面和第4框架界面组成新的初始化框架界面。
S130、根据所述目标显示层获取初始化框架界面中的目标框架界面,并基于所述目标框架界面为父窗口组件创建人机交互界面控件对象。
在本实施例中,在初始化框架界面搭建好后,只需要以电子设备中的应用程序的人机交互界面要显示的位置(即目标显示层)对应的目标框架界面为父窗口组件创建人机交互界面控件对象,从而简化层级管理。例如,若所述人机交互界面的目标显示层为最上层,则基于所述第1目标框架界面为父窗口组件创建第一人机交互界面控件对象。其中,所述人机交互界面控件对象包括按钮、图片、文本框、选项卡、工具栏、状态栏等可视化的界面元素。
在一实施例中,步骤S130包括:
获取所述目标显示层的第一序号,并基于预设计算策略对所述目标显示层的第一序号进行计算以得到框架界面的第二序号;
根据所述框架界面的第二序号获取初始化框架界面中的目标框架界面;
所述预设计算策略的计算公式为m=N+1-j;其中,m表示所述框架界面的第二序号,j表示目标显示层的第一序号,N表示所述框架界面总层数。
在本实施例中,为获取目标框架界面,首先通过获取所述目标显示层的第一序号,并通过预设计算策略,将所述框架界面总层数加1并减去所述目标显示层的第一序号,即可得到框架界面的第二序号;从而基于框架界面的第二序号获取初始化框架界面中与其对应的目标框架界面,其中,所述目标显示层的第一序号上的人机交互界面控件对象与所述框架界面的第二序号上的目标框架界面存在镜像对称的映射关系。
S140、将所述人机交互界面控件对象添加于所述人机交互界面的目标显示层上。
在本实施例中,通过目标显示层获取初始化框架界面中的目标框架界面,并基于所述目标框架界面为父窗口组件创建人机交互界面控件对象之后,再通过获取所述人机交互界面控件对象,并添加于所述人机交互界面的目标显示层上,使得能够以目标框架界面创建的人机交互界面控件对象添加于对应的目标显示层中,其中,所述人机交互界面控件对象包括按钮、图片、文本框、选项卡、工具栏、状态栏等可视化的界面元素。
该方法通过创建初始化框架界面,并根据目标显示层获取初始化框架界面中的目标框架界面,基于目标框架界面创建人机交互界面控件对象,从而简化了界面层级管理。
本发明实施例还提供一种QT界面层级构建装置,该QT界面层级构建装置用于执行前述QT界面层级构建方法的任一实施例。具体地,请参阅图2,图2是本发明实施例提供的QT界面层级构建装置的示意性框图。该QT界面层级构建装置可以配置于具有人机交互界面的电子设备中。
如图2所示,QT界面层级构建装置100包括:第一创建单元110、获取单元120、第二创建单元130、添加单元140。
第一创建单元110,用于响应于框架界面创建指令,根据所述框架界面创建指令创建初始化框架界面。
在本实施例中,当在对电子设备的应用程序的人机交互界面进行构建时,电子设备则会检测框架界面创建指令,以通过响应于该框架界面创建指令,执行该框架界面创建指令,并根据所述框架界面创建指令初始化创建多个框架界面,更具体地,所述多个框架界面至少包括两个框架界面,并通过多个框架界面的关联关系从而搭建初始化框架界面,以便后续创建人机交互界面控件对象。
在一实施例中,第一创建单元110包括:
获取所述框架界面创建指令对应的框架界面总层数;
基于所述框架界面总层数从下层至上层依次创建对应个数的框架界面以得到所述初始化框架界面;
其中,所述初始化框架界面每相邻两个框架界面中位于上层的框架界面以位于下层的框架界面为父窗口组件。
在本实施例中,在创建初始化框架界面前,需先获取所述框架界面创建指令,以得到所述框架界面创建指令对应的框架界面总层数;并根据所述框架界面总层数从下层至上层依次创建对应个数的框架界面,从而得到搭建好的初始化框架界面。并且所述初始化框架界面中每相邻的两个框架界面中设置于上层界面是基于下层的框架界面为父窗口组件进行创建的。
例如,若所述框架界面创建指令对应的框架界面总层数为3,则初始化框架界面中框架界面从下层至上层依次设置有第1框架界面、第2框架界面和第3框架界面,其中,通过所述框架界面创建指令,创建第1框架界面;获取所述第1框架界面,并基于所述第1框架界面为父窗口组件创建第2框架界面;获取所述第2框架界面,并基于所述第2框架界面为父窗口组件创建第3框架界面。
在一实施例中,所述基于所述框架界面总层数从下层至上层依次创建对应个数的框架界面以得到所述初始化框架界面,包括:
若确定所述框架界面总层数大于1,则响应于第1框架界面创建子指令,基于所述第1框架界面创建子指令对应创建第1框架界面;
响应于第i框架界面创建子指令,基于所述第i框架界面创建子指令对应创建第i框架界面;其中,i的初始值为2,且i的取值范围是[2,N],N表示所述框架界面总层数;
构建第i框架界面以第i-1框架界面为父窗口组件的关联关系;
将i增1以更新i的取值;
若确定i未超出N,则返回执行所述响应于第i框架界面创建子指令,基于所述第i框架界面创建子指令对应创建第i框架界面的步骤;
若确定i超出N,则获取第1框架界面至第N框架界面并组成所述初始化框架界面。
在本实施例中,所述框架界面创建指令包括多个框架界面创建子指令,并基于所述框架界面总层数依次类推创建对应个数的框架界面。
例如,当确定所述框架界面总层数为3,即所述框架界面总层数大于1时,响应于第1框架界面创建子指令,并基于所述第1框架界面创建子指令对应创建第一窗口组件对象,作为第1框架界面;且响应于第2框架界面创建子指令,以所述第2框架界面创建子指令对应创建第2框架界面;其中,构建第2框架界面以第1框架界面为父窗口组件进行创建的;此时,框架界面的个数未超出框架界面总层数,则将继续新增框架界面,从而执行响应于第3框架界面创建子指令,以所述第3框架界面创建子指令对应创建第3框架界面,其中,构建第3框架界面以第2框架界面为父窗口组件进行创建的。此时,框架界面的个数等于框架界面总层数,则获取第1框架界面至第3框架界面并组成所述初始化框架界面。
在一实施例中,第一创建单元110之后包括:
将所述初始化框架界面的框架界面总层数及各框架界面的界面名称信息进行显示。
在本实施例中,获取所述框架界面创建指令对应的框架界面总层数后,并基于框架界面总层数创建的初始化框架界面后,获取框架界面总层数中对应每个框架界面的界面名称,并以列表形式进行直观显示,以便用户查询。
获取单元120,用于若检测到人机交互界面显示指令,则根据所述人机交互界面显示指令获取人机交互界面的目标显示层。
在本实施例中,搭建好初始化框架界面后,电子设备的应用程序检测到人机交互界面显示指令时,根据所述人机交互界面显示指令获取人机交互界面的目标显示层,实现对人机交互界面的显示位置进行定位,以便后续根据所述人机交互界面的目标显示层调用与之相对应的框架界面为父窗口组件创建界面控件对象。
在一实施例中,获取单元120包括:
若所述人机交互界面显示指令对应的显示层总数小于或等于所述框架界面总层数,则根据所述人机交互界面显示指令获取所述目标显示层;
若所述人机交互界面显示指令对应的显示总层数大于所述框架界面总层数,则基于所述人机交互界面显示指令对应的显示层总数更新所述初始化框架界面,并根据所述人机交互界面显示指令获取所述目标显示层。
在本实施例中,为了更好的构建初始化框架界面,可对其进行灵活更新,通过判断人机交互界面显示指令对应的显示层总数是否大于所述框架界面总层数;若是,则对所述初始化框架界面进行更新。即若检测到所述人机交互界面显示指令对应的显示层总数小于或等于所述框架界面总层数,则根据所述人机交互界面显示指令对应的显示层总数获取显示层中的目标显示层;若所述人机交互界面显示指令对应的显示总层数大于所述框架界面总层数,则基于所述人机交互界面显示指令对应的显示层总数更新所述初始化框架界面,并根据所述人机交互界面显示指令对应的显示层总数获取显示层中的所述目标显示层。从而使得所述人机交互界面显示指令对应的显示总层数与所述框架界面总层数相等,以实现对初始化框架界面的更新。
在一实施例中,所述基于所述人机交互界面显示指令对应的显示层总数更新所述初始化框架界面,包括:
获取所述人机交互界面显示指令对应的显示层总数与所述框架界面总层数的第一差值;
根据所述第一差值对应依次从下层至上层新增相同个数的框架界面。
在本实施例中,若人机交互界面显示指令所对应的显示层总数超过框架界面总层数,则基于所述人机交互界面显示指令对应的显示层总数与所述框架界面总层数的第一差值对应依次从下层至上层新增与所述第一差值相同个数的框架界面,以实现对所述初始化框架界面的更新。例如,当人机交互界面显示指令所对应的显示层总数为4,而框架界面总层数为3,可知两者差值为1,则以第3框架界面为父窗口组件创建窗口组件对象作为第4框架界面,从而由第1框架界面、第2框架界面和第3框架界面更新为由第1框架界面、第2框架界面、第3框架界面和第4框架界面组成新的初始化框架界面。
第二创建单元130,用于根据所述目标显示层获取初始化框架界面中的目标框架界面,并基于所述目标框架界面为父窗口组件创建人机交互界面控件对象。
在本实施例中,在初始化框架界面搭建好后,只需要以电子设备中的应用程序的人机交互界面要显示的位置(即目标显示层)对应的目标框架界面为父窗口组件创建人机交互界面控件对象,从而简化层级管理。例如,若所述人机交互界面的目标显示层为最上层,则基于所述第1目标框架界面为父窗口组件创建第一人机交互界面控件对象。其中,所述人机交互界面控件对象包括按钮、图片、文本框、选项卡、工具栏、状态栏等可视化的界面元素。
在一实施例中,第二创建单元130包括:
获取所述目标显示层的第一序号,并基于预设计算策略对所述目标显示层的第一序号进行计算以得到框架界面的第二序号;
根据所述框架界面的第二序号获取初始化框架界面中的目标框架界面;
所述预设计算策略的计算公式为m=N+1-j;其中,m表示所述框架界面的第二序号,j表示目标显示层的第一序号,N表示所述框架界面总层数。
在本实施例中,为获取目标框架界面,首先通过获取所述目标显示层的第一序号,并通过预设计算策略,将所述框架界面总层数加1并减去所述目标显示层的第一序号,即可得到框架界面的第二序号;从而基于框架界面的第二序号获取初始化框架界面中与其对应的目标框架界面,其中,所述目标显示层的第一序号上的人机交互界面控件对象与所述框架界面的第二序号上的目标框架界面存在镜像对称的映射关系。
添加单元140,用于将所述人机交互界面控件对象添加于所述人机交互界面的目标显示层上。
在本实施例中,通过目标显示层获取初始化框架界面中的目标框架界面,并基于所述目标框架界面为父窗口组件创建人机交互界面控件对象之后,再通过获取所述人机交互界面控件对象,并添加于所述人机交互界面的目标显示层上,使得能够以目标框架界面创建的人机交互界面控件对象添加于对应的目标显示层中,其中,所述人机交互界面控件对象包括按钮、图片、文本框、选项卡、工具栏、状态栏等可视化的界面元素。
该装置通过创建初始化框架界面,并根据目标显示层获取初始化框架界面中的目标框架界面,并基于目标框架界面创建人机交互界面控件对象,从而简化了界面层级管理。
上述QT界面层级构建装置可以实现为计算机程序的形式,该计算机程序可以在如图3所示的计算机设备上运行。
请参阅图3,图3是本发明实施例提供的计算机设备的示意性框图。该计算机设备500是服务器,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图3,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032被执行时,可使得处理器502执行QT界面层级构建方法。
该处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行QT界面层级构建方法。
该网络接口505用于进行网络通信,如提供数据信息的传输等。本领域技术人员可以理解,图3中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现本发明实施例公开的QT界面层级构建方法。
本领域技术人员可以理解,图3中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图3所示实施例一致,在此不再赘述。
应当理解,在本发明实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本发明的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质。该计算机可读存储介质存储有计算机程序,其中计算机程序被处理器执行时实现本发明实施例公开的QT界面层级构建方法。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种QT界面层级构建方法,其特征在于,包括:
响应于框架界面创建指令,根据所述框架界面创建指令创建初始化框架界面;
若检测到人机交互界面显示指令,则根据所述人机交互界面显示指令获取人机交互界面的目标显示层;
根据所述目标显示层获取初始化框架界面中的目标框架界面,并基于所述目标框架界面为父窗口组件创建人机交互界面控件对象;
将所述人机交互界面控件对象添加于所述人机交互界面的目标显示层上。
2.根据权利要求1所述的QT界面层级构建方法,其特征在于,所述根据所述框架界面创建指令创建初始化框架界面,包括:
获取所述框架界面创建指令对应的框架界面总层数;
基于所述框架界面总层数从下层至上层依次创建对应个数的框架界面以得到所述初始化框架界面;其中,所述初始化框架界面每相邻两个框架界面中位于上层的框架界面以位于下层的框架界面为父窗口组件。
3.根据权利要求2所述的QT界面层级构建方法,其特征在于,所述基于所述框架界面总层数从下层至上层依次创建对应个数的框架界面以得到所述初始化框架界面,包括:
若确定所述框架界面总层数大于1,则响应于第1框架界面创建子指令,基于所述第1框架界面创建子指令对应创建第1框架界面;
响应于第i框架界面创建子指令,基于所述第i框架界面创建子指令对应创建第i框架界面;其中,i的初始值为2,且i的取值范围是[2,N],N表示所述框架界面总层数;
构建第i框架界面以第i-1框架界面为父窗口组件的关联关系;
将i增1以更新i的取值;
若确定i未超出N,则返回执行所述响应于第i框架界面创建子指令,基于所述第i框架界面创建子指令对应创建第i框架界面的步骤;
若确定i超出N,则获取第1框架界面至第N框架界面并组成所述初始化框架界面。
4.根据权利要求2所述的QT界面层级构建方法,其特征在于,在所述响应于框架界面创建指令,根据所述框架界面创建指令创建初始化框架界面之后,所述方法还包括:
将所述初始化框架界面的框架界面总层数及各框架界面的界面名称信息进行显示。
5.根据权利要求4所述的QT界面层级构建方法,其特征在于,所述若检测到人机交互界面显示指令,则根据所述人机交互界面显示指令获取人机交互界面的目标显示层,所述方法还包括:
若所述人机交互界面显示指令对应的显示层总数小于或等于所述框架界面总层数,则根据所述人机交互界面显示指令获取所述目标显示层;
若所述人机交互界面显示指令对应的显示总层数大于所述框架界面总层数,则基于所述人机交互界面显示指令对应的显示层总数更新所述初始化框架界面,并根据所述人机交互界面显示指令获取所述目标显示层。
6.根据权利要求5所述的QT界面层级构建方法,其特征在于,所述基于所述人机交互界面显示指令对应的显示层总数更新所述初始化框架界面,包括:
获取所述人机交互界面显示指令对应的显示层总数与所述框架界面总层数的第一差值;
根据所述第一差值对应依次从下层至上层新增相同个数的框架界面。
7.根据权利要求1所述的QT界面层级构建方法,其特征在于,所述根据所述目标显示层获取初始化框架界面中的目标框架界面,包括:
获取所述目标显示层的第一序号,并基于预设计算策略对所述目标显示层的第一序号进行计算以得到框架界面的第二序号;
根据所述框架界面的第二序号获取初始化框架界面中的目标框架界面;
所述预设计算策略的计算公式为m=N+1-j;其中,m表示所述框架界面的第二序号,j表示目标显示层的第一序号,N表示所述框架界面总层数。
8.一种QT界面层级构建装置,其特征在于,包括:
第一创建单元,用于响应于框架界面创建指令,根据所述框架界面创建指令创建初始化框架界面;
获取单元,用于若检测到人机交互界面显示指令,则根据所述人机交互界面显示指令获取人机交互界面的目标显示层;
第二创建单元,用于根据所述目标显示层获取初始化框架界面中的目标框架界面,并基于所述目标框架界面为父窗口组件创建人机交互界面控件对象;
添加单元,用于将所述人机交互界面控件对象添加于所述人机交互界面的目标显示层上。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-7中任一项所述的QT界面层级构建方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现如权利要求1-7中任一项所述的QT界面层级构建方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310335553.1A CN116339734A (zh) | 2023-03-29 | 2023-03-29 | 一种qt界面层级构建方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310335553.1A CN116339734A (zh) | 2023-03-29 | 2023-03-29 | 一种qt界面层级构建方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116339734A true CN116339734A (zh) | 2023-06-27 |
Family
ID=86883833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310335553.1A Pending CN116339734A (zh) | 2023-03-29 | 2023-03-29 | 一种qt界面层级构建方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116339734A (zh) |
-
2023
- 2023-03-29 CN CN202310335553.1A patent/CN116339734A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240036708A1 (en) | User interface logical and execution view navigation and shifting | |
JP5892746B2 (ja) | 個別化コンテンツ・レイアウトのための方法、システム、およびプログラム(個別化コンテンツ・レイアウトのためのシステムおよび方法) | |
KR101528215B1 (ko) | 화면 상에 3d 장면 그래프를 디스플레이하는 방법 | |
US20210096526A1 (en) | Task based configuration presentation context | |
US20060271908A1 (en) | Method of componentisation of a graphically defined formula | |
JP2009151796A (ja) | シミュレーション・モデル内のオブジェクトおよびオブジェクトに関連付けられたパラメータ値を管理する方法 | |
US20080010082A1 (en) | System and method for business process management | |
EP2564299A2 (en) | Spin control user interface for selecting options | |
US7603624B2 (en) | System and method for styling content in a graphical user interface control | |
CN1117328C (zh) | 帮助软件应用程序中的导航和改进屏幕观察的方法和系统 | |
US11775142B2 (en) | Preferential automation view curation | |
CN111754305A (zh) | 产品定制方法、装置、设备和存储介质 | |
US7730495B2 (en) | Declaratively defined control actions | |
CN112214155A (zh) | 一种视图信息播放方法、装置、设备和存储介质 | |
CN112947916B (zh) | 用于实现在线画布的方法、装置、设备以及存储介质 | |
US10614051B2 (en) | Method for operating an engineering system for an industrial process automation system, and control program | |
US20140181701A1 (en) | Model-Based User Interface | |
CN116339734A (zh) | 一种qt界面层级构建方法、装置、设备及存储介质 | |
US20120167015A1 (en) | Providing visualization of system landscapes | |
US9996559B2 (en) | Maintenance actions and user-specific settings of the attribute value derivation instruction set user interface | |
CN111381976B (zh) | 消息提示数据的更新方法、装置、存储介质及计算机设备 | |
US8752010B1 (en) | Dynamic interface synthesizer | |
US8667478B1 (en) | Backward-compatibility using a plugin architecture | |
CN114241092A (zh) | 多图排版方法、多图排版装置及电子设备 | |
EP2482185A1 (en) | Flexible dual data attribute |
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 |