CN105893063B - 一种基于xml格式配置文件的应用程序界面的构建方法 - Google Patents
一种基于xml格式配置文件的应用程序界面的构建方法 Download PDFInfo
- Publication number
- CN105893063B CN105893063B CN201610428109.4A CN201610428109A CN105893063B CN 105893063 B CN105893063 B CN 105893063B CN 201610428109 A CN201610428109 A CN 201610428109A CN 105893063 B CN105893063 B CN 105893063B
- Authority
- CN
- China
- Prior art keywords
- entry
- configuration
- label
- sub
- attribute
- 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
- 238000010276 construction Methods 0.000 title claims abstract description 8
- 238000012986 modification Methods 0.000 description 9
- 230000004048 modification Effects 0.000 description 9
- 238000000034 method Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004883 computer application Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004153 renaturation Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
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)
- Stored Programmes (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于XML格式配置文件的应用程序界面及其构建方法,包括菜单栏组件配置模块、工具栏组件配置模块、锚接窗口组件配置模块、子窗口组件和子控件组件配置模块、配置文件操作模块。通过XML格式的配置文件配置应用程序的基本组件属性,实现应用程序界面的配置;读取XML格式的配置文件,解析各组件的配置参数,并分别按照各自规则和需求进行编码,完成应用程序界面各组件相关配置信息的获取和构建;相同类型组件或条目都公用一个接口函数,在相应的接口函数中编写对应的功能,完成应用程序界面各组件功能的实现,减少了重复性编码工作,提高了工作效率,通过存在属性可显示或隐藏已有功能,便于公用接口函数的管理和维护。
Description
技术领域
本发明涉及计算机应用技术领域,具体涉及应用程序界面的菜单栏、工具栏、锚接窗口、子窗口和子控件等基本组件的配置、构建和接口方法。
背景技术
传统的应用程序界面的设计和开发一般利用现有的集成开发环境,通过编写代码实现界面的设计与开发,要求代码和界面的耦合度极高。在对应用程序增加或删除组件、显示或隐藏功能、多个智能变电站IED设备检测工具功能调试,以及满足不同客户界面需求方面,需要重复性编译每个工程,造成工作冗余、成本增加、效率低下,且容易引进缺陷,影响项目进度。
发明内容
针对上述问题,本发明型提供一种基于XML格式配置文件的应用程序界面及其构建方法,以简易高效的方式配置应用程序界面,实现界面的灵活配置和高效维护。
为解决上述问题,本发明型采取的技术方案为:一种基于XML格式配置文件的应用程序界面的构建方法,包括:
(1)菜单栏组件配置模块,菜单栏的所有条目都公用一个接口函数,函数参数为菜单栏条目唯一的标识属性,且每个条目也都有其唯一的标识属性,根据条目唯一的标识属性编写对应的功能;包括命名条目、添加图标、修改选中状态和可自动测试属性,且可以调整条目个数;
(2)工具栏组件配置模块,父工具栏条目和子工具条目分别属于父菜单栏条目和子菜单条目范围内,只需要相应设置在工具栏中的存在属性即可;
(3)锚接窗口组件配置模块,锚接窗口的所有组件都公用一个接口函数,函数参数为锚接窗口组件唯一的标识属性,且每个组件也都有其唯一的标识属性,根据组件唯一的标识属性编写对应的功能;包括命名组件、位置、是否叠加、宽度、高度和背景色,且可以调整组件个数;
(4)子窗口组件和子控件组件配置模块,子窗口的所有组件都公用一个接口函数,函数参数为子窗口组件唯一的标识属性,且每个组件也都有其唯一的标识属性,根据组件唯一的标识属性编写对应的功能;包括命名组件、是否可编辑、内容提示属性,且可以调整组件个数;子控件的所有组件都公用一个接口函数,函数参数为子控件组件唯一的标识属性,且每个组件也都有其唯一的标识属性,根据组件唯一的标识属性编写对应的功能;包括命名组件、默认值、数据属性、是否可编辑,且可以调整组件个数;
(5)配置文件操作模块,使用Qt库的QFile类读取XML格式的配置文件,使用QDomDocument类解析菜单栏、工具栏、锚接窗口、子窗口和子控件组件的配置参数,并分别按照各自规则和需求进行编码,完成应用程序界面各组件相关配置信息的获取和构建;
(6)组件功能实现模块,菜单栏、工具栏、锚接窗口、子窗口和子控件组件都有各自公用的接口函数,根据应用程序界面每个条目或组件的唯一标识属性,在相应的接口函数中编写对应的功能,完成应用程序界面各组件功能的实现。
一种基于XML格式配置文件的应用程序界面的构建方法,包括如下步骤:
步骤一、打开配置文件
利用配置文件中软件自带的“查找”功能,查找到标签Menu、
标签DockWidget或标签Operator,或直接滚动鼠标到标签位置;步骤二、配置菜单栏组件信息
查找到标签为Menu的条目,修改id值和name值属性,完成父菜单栏的属性配置;查找到Menu条目下标签为Action的子条目,修改id值、image值、value值、bChecked值和bAutoTest值属性,完成相应子菜单的属性配置;通过增加或删除Menu条目的或Menu条目下Action子条目的个数,完成父菜单栏或相应子菜单的个数配置;若查找不到标签为Menu的条目或为Action的子条目则转至步骤六;
步骤三、配置工具栏组件信息
从已配置完成的父菜单栏及其子菜单的条目中分别选取父工具栏及其子工具的条目;查找到标签为ToolBar的条目,修改id值和title值属性,完成父工具栏的属性配置;查找到ToolBar条目下标签为Action的子条目,修改id值和存在属性,完成相应子工具的属性配置;查找到标签为ActionGroup的条目,完成该组内子工具条目的互斥属性配置,保证一组子工具内的子工具条目为单选模式,且该配置属性同时作用于子菜单条目;通过增加或删除ToolBar条目的或ToolBar条目下Action子条目的个数,完成父工具栏或相应子工具的个数配置,若查找不到标签为ToolBar的条目或为Action的子条目或为ActionGroup的条目则转至步骤六;
步骤四、配置锚接窗口组件信息
查找到标签为DockWidget的条目,修改id值、title值、position值、tabify值、width值、height值和bgColor值属性,完成锚接窗口组件的属性配置;通过增加或删除DockWidget条目的个数,完成锚接窗口的个数配置,若查找不到标签为DockWidget的条目则转至步骤六;
步骤五、配置子窗口组件和子控件组件信息
查找到标签为Operator的条目,修改id值、name值、ref值和editAttr值属性,完成子窗口的属性配置;查找到Operator条目下标签为Param的子条目,修改id值、name值、value值、type值和editAttr值属性,完成相应子控件的属性配置;通过增加或删除Operator条目的或Param子条目的个数,完成子窗口或相应子控件的个数配置;若查找不到标签为Operator的条目或为Param的子条目则转至步骤六;
步骤六、结束。
本发明通过XML格式的配置文件配置应用程序的基本组件属性,
实现应用程序界面的配置。相同类型组件或条目都公用一个接口函数,减少了重复性编码工作,提高了工作效率,通过存在属性可显示或隐藏已有功能,便于公用接口函数的管理和维护。
附图说明
图1是本发明的文件配置步骤流程图;
图2是本发明的工作原理流程图。
具体实施方式
如图1所示,一种基于XML格式配置文件的应用程序界面的构建方法,文件配置步骤如下:
利用配置文件中软件自带的“查找”功能,查找到标签Menu、
标签DockWidget或标签Operator,或直接滚动鼠标到标签位置;配置菜单栏组件信息的方式如下:打开XML格式的配置文件,查找到标签为Menu的条目,修改id值和name值属性,完成父菜单栏的属性配置;查找到Menu条目下标签为Action的子条目,修改id值、image值、value值、bChecked值和bAutoTest值属性,完成相应子菜单的属性配置;通过增加或删除Menu条目的或Menu条目下Action子条目的个数,完成父菜单栏或相应子菜单的个数配置。
配置工具栏组件信息的方式如下:在上述步骤的基础上,从已配置完成的父菜单栏及其子菜单的条目中分别选取父工具栏及其子工具的条目;查找到标签为ToolBar的条目,修改id值和title值属性,完成父工具栏的属性配置;查找到ToolBar条目下标签为Action的子条目,修改id值和存在属性,完成相应子工具的属性配置;查找到标签为ActionGroup的条目,完成该组内子工具条目的互斥属性配置,保证一组子工具内的子工具条目为单选模式,且该配置属性同时作用于子菜单条目;通过增加或删除ToolBar条目的或ToolBar条目下Action子条目的个数,完成父工具栏或相应子工具的个数配置。
配置锚接窗口组件信息的方式如下:打开XML格式的配置文件,
查找到标签为DockWidget的条目,修改id值、title值、position值、tabify值、width值、height值和bgColor值属性,完成锚接窗口组件的属性配置;通过增加或删除DockWidget条目的个数,完成锚接窗口的个数配置。
子窗口组件和子控件组件的方式如下:打开XML格式的配置文件,查找到标签为Operator的条目,修改id值、name值、ref值和editAttr值属性,完成子窗口的属性配置;查找到Operator条目下标签为Param的子条目,修改id值、name值、value值、type值和editAttr值属性,完成相应子控件的属性配置;通过增加或删除Operator条目的或Param子条目的个数,完成子窗口或相应子控件的个数配置。
如图2所示,使用Qt库的QFile类读取XML格式的配置文件,使用QDomDocument类解析菜单栏、工具栏、锚接窗口、子窗口和子控件组件的配置参数,并分别按照各自规则和需求进行编码,完成应用程序界面各组件相关配置信息的获取和构建;菜单栏、工具栏、锚接窗口、子窗口和子控件组件都有各自公用的接口函数,根据应用程序界面每个条目或组件的唯一标识属性,在相应的接口函数中编写对应的功能,完成应用程序界面各组件功能的实现。
Claims (1)
1.一种基于XML格式配置文件的应用程序界面的构建方法,其特征在于包括如下步骤:
步骤一、打开配置文件
利用配置文件中软件自带的“查找”功能,查找到标签Menu、标签DockWidget或标签Operator,或直接滚动鼠标到标签位置;
步骤二、配置菜单栏组件信息
查找到标签为Menu的条目,完成父菜单栏的属性配置;查找到Menu条目下标签为Action的子条目,完成相应子菜单的属性配置;通过增加或删除Menu条目的或Menu条目下Action子条目的个数,完成父菜单栏或相应子菜单的个数配置;若查找不到标签为Menu的条目或为Action的子条目则转至步骤八;
步骤三、配置工具栏组件信息
从已配置完成的父菜单栏及其子菜单的条目中分别选取父工具栏及其子工具的条目;查找到标签为ToolBar的条目,完成父工具栏的属性配置;查找到ToolBar条目下标签为Action的子条目,完成相应子工具的属性配置;查找到标签为ActionGroup的条目,完成该组内子工具条目的互斥属性配置,且该配置属性同时作用于子菜单条目;通过增加或删除ToolBar条目的或ToolBar条目下Action子条目的个数,完成父工具栏或相应子工具的个数配置,若查找不到标签为ToolBar的条目或为Action的子条目或为ActionGroup的条目则转至步骤八;
步骤四、配置锚接窗口组件信息
查找到标签为DockWidget的条目,完成锚接窗口的属性配置;通过增加或删除DockWidget条目的个数,完成锚接窗口的个数配置,若查找不到标签为DockWidget的条目则转至步骤八;
步骤五、配置子窗口组件和子控件组件信息
查找到标签为Operator的条目,完成子窗口的属性配置;查找到Operator条目下标签为Param的子条目,完成相应子控件的属性配置;通过增加或删除Operator条目的或Operator条目下Param子条目的个数,完成子窗口或相应子控件的个数配置;若查找不到标签为Operator的条目或为Param的子条目则转至步骤八;
步骤六、获取和构建应用程序界面各组件相关配置信息;
使用Qt库的QFile类读取XML格式的配置文件,使用QDomDocument类解析菜单栏、工具栏、锚接窗口、子窗口和子控件组件的配置参数,并分别按照各自规则和需求进行编码,完成应用程序界面各组件相关配置信息的获取和构建;
步骤七、实现应用程序界面各组件功能
菜单栏、工具栏、锚接窗口、子窗口和子控件组件都有各自公用的接口函数,根据应用程序界面每个条目或组件的唯一标识属性,在相应的接口函数中编写对应的功能,完成应用程序界面各组件功能的实现;
步骤八、结束。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610428109.4A CN105893063B (zh) | 2016-06-13 | 2016-06-13 | 一种基于xml格式配置文件的应用程序界面的构建方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610428109.4A CN105893063B (zh) | 2016-06-13 | 2016-06-13 | 一种基于xml格式配置文件的应用程序界面的构建方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105893063A CN105893063A (zh) | 2016-08-24 |
CN105893063B true CN105893063B (zh) | 2019-02-15 |
Family
ID=56730815
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610428109.4A Active CN105893063B (zh) | 2016-06-13 | 2016-06-13 | 一种基于xml格式配置文件的应用程序界面的构建方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105893063B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110019440B (zh) * | 2017-08-30 | 2021-06-08 | 北京国双科技有限公司 | 数据的处理方法及装置 |
CN108572859A (zh) * | 2017-12-28 | 2018-09-25 | 山东中创软件商用中间件股份有限公司 | 一种可配置的执行程序系统及其控制方法 |
CN108595223A (zh) * | 2018-04-27 | 2018-09-28 | 上海达梦数据库有限公司 | 一种应用程序的配置方法、装置、设备及存储介质 |
CN110750313B (zh) * | 2019-10-21 | 2023-07-25 | 北京百度网讯科技有限公司 | 一种中间件的热加载方法、装置、电子设备及存储介质 |
CN112181419B (zh) * | 2020-12-03 | 2021-08-31 | 成都极米科技股份有限公司 | 一种界面生成方法、装置及存储介质 |
CN114879957A (zh) * | 2022-03-24 | 2022-08-09 | 北京时代民芯科技有限公司 | 一种利用可扩展标签语言编辑Eclipse界面及调用工具的方法 |
CN115629691A (zh) * | 2022-12-22 | 2023-01-20 | 北京智象信息技术有限公司 | 一种LinuxTV系统多个系统菜单管理方法、装置、设备和介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101315604A (zh) * | 2008-06-30 | 2008-12-03 | 华为技术有限公司 | 软件定制模块的实现方法及系统 |
CN101714083A (zh) * | 2009-12-16 | 2010-05-26 | 金蝶软件(中国)有限公司 | 一种应用程序菜单的生成方法、装置及应用系统 |
CN101778169A (zh) * | 2010-02-04 | 2010-07-14 | 华为终端有限公司 | 应用程序界面的动态显示方法及装置 |
CN104077133A (zh) * | 2014-06-24 | 2014-10-01 | 中国地质大学(北京) | 一种配置式菜单的生成方法 |
CN105511843A (zh) * | 2014-09-22 | 2016-04-20 | 普天信息技术有限公司 | 一种生成应用程序界面的方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8429605B2 (en) * | 2009-12-30 | 2013-04-23 | The United States Of America As Represented By The Secretary Of The Navy | Finite state machine architecture for software development |
-
2016
- 2016-06-13 CN CN201610428109.4A patent/CN105893063B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101315604A (zh) * | 2008-06-30 | 2008-12-03 | 华为技术有限公司 | 软件定制模块的实现方法及系统 |
CN101714083A (zh) * | 2009-12-16 | 2010-05-26 | 金蝶软件(中国)有限公司 | 一种应用程序菜单的生成方法、装置及应用系统 |
CN101778169A (zh) * | 2010-02-04 | 2010-07-14 | 华为终端有限公司 | 应用程序界面的动态显示方法及装置 |
CN104077133A (zh) * | 2014-06-24 | 2014-10-01 | 中国地质大学(北京) | 一种配置式菜单的生成方法 |
CN105511843A (zh) * | 2014-09-22 | 2016-04-20 | 普天信息技术有限公司 | 一种生成应用程序界面的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN105893063A (zh) | 2016-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105893063B (zh) | 一种基于xml格式配置文件的应用程序界面的构建方法 | |
US10175855B2 (en) | Interaction in orbit visualization | |
CN104679519B (zh) | 图形用户界面软件功能获取方法及装置 | |
US9003312B1 (en) | Method and apparatus for updating a web-based user interface | |
CN100449485C (zh) | 信息处理装置和方法 | |
CN101622619B (zh) | 用于导航和可视化关系数据库和/或多维数据库中的数据的方法和系统 | |
CN106598591A (zh) | 一种网页动态菜单生成方法及装置 | |
US8375402B2 (en) | Mechanism for interfacing a display screen of another technology with a computing platform | |
Maddison et al. | Mesquite 2 | |
CN106649100A (zh) | 一种自动化测试方法及系统 | |
CN101796517A (zh) | 用于分层数据集的面包屑列表补充 | |
CN103810152A (zh) | 可视化公式编辑器 | |
KR20180121193A (ko) | 엑셀 기반 건축 설계 파일의 버전 제어 방법 | |
CN108073688A (zh) | 一种数据迁移的方法及装置 | |
CN104461892A (zh) | 自定义控件获取方法和装置 | |
US20130268527A1 (en) | Processing acquisition data into deliverable format | |
CN101794223A (zh) | Wade服务消息架构的设计方法 | |
KR101667266B1 (ko) | 적응형 웹 디자인 시스템 및 방법 | |
CN101826015A (zh) | 窗口界面配置系统以及窗口界面配置方法 | |
Schramm et al. | Rapid UI development for enterprise applications: Combining manual and model-driven techniques | |
Grolaux et al. | FlexClock, a Plastic Clock Written in Oz with the QTk toolkit. | |
CN105353939B (zh) | 一种桌面数据加载方法及装置 | |
CN115509665B (zh) | 一种录制窗口中控件的方法、装置、介质及设备 | |
CN105426175A (zh) | 提供基于场景特性动态组件的装置和方法 | |
GB2369460A (en) | Knowledge based project management system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |