一种基于XML的实时数据监测人机交互界面定义方法技术

技术编号:34639257 阅读:6 留言:0更新日期:2022-08-24 15:14
本发明专利技术涉及一种基于XML的实时数据监测人机交互界面定义方法,通过设置XML文件内容;根据设置的XML文件内容创建人机交互界面;实现了对创建的人机交互界面进行实时数据监测。现有技术中装备软件需要接收通过网络中传输而来的设备实时信息,并将设备信息在软件界面中实时显示,通过XML文件可实现设备信息自动接收、解析等工作。本发明专利技术在已有XML文件基础上进行改进,通过读取XML文件中存储的设备信息,实现人机交互界面内容自动创建、界面中可实现对设备信息的实时监测。设备信息的实时监测。设备信息的实时监测。

【技术实现步骤摘要】
一种基于XML的实时数据监测人机交互界面定义方法


[0001]本专利技术属于软件数据管理
,尤其是一种基于XML的实时数据监测人机交互界面定义方法。

技术介绍

[0002]XML文件是一种结构化标记语言,可以按照特定结构存储多级信息,利用XML可以存储创建设备监测界面、接收设备数据并实时显示的各种信息。
[0003]现有技术中实时数据监测界面的定义通常采用手动创建的方式,若监测数据存在变化时,需要手动调整界面布局,开发人员修改成本较高。因此研发一种能够自动调整页面布局的方法成为现如今的难题之一。

技术实现思路

[0004]本专利技术的目的在于克服现有技术的不足,提出一种基于XML的实时数据监测人机交互界面定义方法,通过读取XML文件中存储的设备信息,实现人机交互界面内容自动创建、界面中可实现对设备信息的实时监测。
[0005]本专利技术解决其技术问题是采取以下技术方案实现的:
[0006]一种基于XML的实时数据监测人机交互界面定义方法,包括以下步骤:
[0007]步骤1、设置XML文件内容;
[0008]步骤2、根据步骤1中设置的XML文件内容创建人机交互界面;
[0009]步骤3、根据步骤2中创建的人机交互界面进行实时数据监测。
[0010]而且,所述步骤1中文件内容包括:子信息变量名称name、length、value、dimension、bSigned、bInt和bShow,子信息变量名称name的用途为界面显示,子信息变量名称length的用途为实时数据解析,子信息变量名称value的用途为界面显示,子信息变量名称dimension的用途为实时数据解析,子信息变量名称bSigned的用途为实时数据解析,子信息变量名称bInt的用途为实时数据解析,子信息变量名称bShow的用途为界面显示。
[0011]而且,所述步骤2的具体实现方法为:
[0012]步骤2.1、读取步骤1中设定的XML文件内容,将文件名字存入变量xmlFileName中,并将所有信息量信息存储至allXML向量中;
[0013]步骤2.2、创建一个XmlInfoShow类,类中包含两个QLable型成员变量nameLable和valueLable;
[0014]步骤2.3、定义QGridLayout类型的布局管理器;
[0015]步骤2.4、创建一个模板类QMap<int,XmlInfoShow*>xmlInfoShow,其中xmlInfoShow为XmlInfoShow的型向量;
[0016]步骤2.5、遍历步骤2.1allXML向量中的所有信息量,将存储的每个信息量的name和value分别插入到xmlInfoShow中;
[0017]步骤2.6、将步骤2.4xmlInfoShow中的nameLable和valueLable遍历插入到步骤
2.3QGridLayout布局管理器中。
[0018]而且,所述步骤3的具体实现方法为:
[0019]步骤3.1、建立界面信息量更新槽函数updateShow();
[0020]步骤3.2、建立信息量更新信号;
[0021]步骤3.3、创建界面信息量更新槽函数与信息量更新信号的连接关系;
[0022]步骤3.4、等待网络报文,待网络线程接收到报文并解析后,将信息量最新数值存储到全局变量中,并发送信息量更新信号;
[0023]步骤3.5、人机交互界面接收到信息量更新信号后,调用界面信息量更新槽函数updateShow(),对人机交互界面进行数值更新,并返回步骤3.4。
[0024]本专利技术的优点和积极效果是:
[0025]本专利技术通过设置XML文件内容;根据设置的XML文件内容创建人机交互界面;实现了对创建的人机交互界面进行实时数据监测。现有技术中装备软件需要接收通过网络中传输而来的设备实时信息,并将设备信息在软件界面中实时显示,通过XML文件可实现设备信息自动接收、解析等工作。本专利技术在已有XML文件基础上进行改进,通过读取XML文件中存储的设备信息,实现人机交互界面内容自动创建、界面中可实现对设备信息的实时监测。
附图说明
[0026]图1为本专利技术创建人机交互界面的流程图;
[0027]图2为本专利技术人机交互界面实时数据监测的流程图;
[0028]图3为本专利技术人机交互界面显示示意图;
[0029]图4为本专利技术人机交互界面实时监测效果图。
具体实施方式
[0030]以下结合附图对本专利技术做进一步详述。
[0031]一种基于XML的实时数据监测人机交互界面定义方法,包括以下步骤:
[0032]步骤1、设置XML文件内容。XML作为软件工程的配置文件,包含各类信息,XML文件名称设置为设备名称,若一个设备共有5种信息量待显示,其中单个信息量的XML文件内容为:
[0033][0034]XML文件内容中个信息的含义及用途如表1所示。
[0035]表一
[0036][0037]步骤2、根据步骤1中设置的XML文件内容创建人机交互界面。
[0038]如图1所示,本步骤的具体实现方法为:
[0039]步骤2.1、读取步骤1中设定的XML文件内容,将文件名字存入变量xmlFileName中,并将所有信息量信息存储至allXML向量中,其中allXML[i]表示第i条信息量下各信息。
[0040]步骤2.2、创建一个XmlInfoShow类,类中包含两个QLable型成员变量nameLable和valueLable,用于显示信息量名称和数值。
[0041]步骤2.3、定义QGridLayout类型的布局管理器,用于界面布局。
[0042]步骤2.4、创建一个模板类QMap<int,XmlInfoShow*>xmlInfoShow,其中xmlInfoShow为XmlInfoShow的型向量,用于存放待显示的全部信息。
[0043]步骤2.5、令i=1,n=allxml.count(),其中n为信息个数。
[0044]步骤2.6、将步骤2.1allXML向量中的name和value信息映射为步骤2.4xmlInfoShow[i]中两个QLable型成员变量nameLable和valueLable。
[0045]步骤2.7、将xmlInfoShow[i]中两个QLable型成员变量nameLable和valueLable添加至步骤2.3中布局管理器的同一行。
[0046]步骤2.8、使i=i+1,并且判断i=i+1是否大于等于n,若大于等于则结束,进入步骤3,否则返回步骤2.6。
[0047]步骤3、根据步骤2中创建的人机交互界面进行实时数据监测。
[0048]如图2所示,本步骤的具体实现方法为:
[0049]步骤3.1、建立界面本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于XML的实时数据监测人机交互界面定义方法,其特征在于:包括以下步骤:步骤1、设置XML文件内容;步骤2、根据步骤1中设置的XML文件内容创建人机交互界面;步骤3、根据步骤2中创建的人机交互界面进行实时数据监测。2.根据权利要求1所述的一种基于XML的实时数据监测人机交互界面定义方法,其特征在于:所述步骤1中文件内容包括:子信息变量名称name、length、value、dimension、bSigned、bInt和bShow,子信息变量名称name的用途为界面显示,子信息变量名称length的用途为实时数据解析,子信息变量名称value的用途为界面显示,子信息变量名称dimension的用途为实时数据解析,子信息变量名称bSigned的用途为实时数据解析,子信息变量名称bInt的用途为实时数据解析,子信息变量名称bShow的用途为界面显示。3.根据权利要求1所述的一种基于XML的实时数据监测人机交互界面定义方法,其特征在于:所述步骤2的具体实现方法为:步骤2.1、读取步骤1中设定的XML文件内容,将文件名字存入变量xmlFileName中,并将所有信息量信息存储至allXML向量中;步骤2.2、创建一个XmlInfoShow类,类中包含两个QLable型成员变量nam...

【专利技术属性】
技术研发人员:李秀财周智楠包汉瑜
申请(专利权)人:中国船舶重工集团公司第七零七研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1