Qt:QDom解析XML总结 Qt+XML界面设计(上)

最近也是一直在用Qt+XML+qss开发界面,所以总结一下这套前端的架构模式。主要的构成就是用xml写出界面需要用到的控件以及布局,利用Qt中的QDom类对xml进行解析,解析并获取xml中参数后,创建Qt相关的控件,并且在qss中设计出具体的控件样式。最后得到一套完整的Qt+XML+qss界面架构模型,在整个模型中,界面的绘制直接依靠xml去实现即可,少部分代码添加进解析程序中,复用性尚可。

目录

QDom简介

XML DOM节点

QDomDocument

QDomElement

QDomAttr

Qt读取XML的用法


QDom简介

QDom其实是Qt中一个很大的类,写一天可能也写不完,其中包含着QDomcument,QDomNode,QDomElement,QDomNodeList等类,这些类是实现解析出XML的关键。我们以这几个类为切入点介绍这个QDom里面的各个类的复杂关系网。

DOM是Document Object Model的简写,即XML文档对象模型,是由W3C提出的一种处理XML文档的标准接口。

 DOM 一次性读入整个XML文档,在内存中构造为一棵树(DOM树)将XML文件表示成一棵树,便于随机访问其中的节点,但消耗内存相对多一些。能够在这棵树上进行导航,比如移动到下一节点或者返回上一节点,也可以对这棵树进行修改,或者是直接将这颗树保存为硬盘上的一个 XML 文件。

  • XML DOM节点

XML 文档中的每个成分都是一个节点,整个文档是一个文档节点,每个XML 标签是一个元素节点,包含在XML元素中的文本是文本节点, 每一个XML属性是一个属性节点,注释属于注释节点。

QDomDocument

该QDomDocument类表示XML文档。

该QDomDocument类代表整个XML文档。从概念上讲,它是文档树的根,并提供对文档数据的主要访问。

由于元素,文本节点,注释,处理指令等不能在文档上下文之外存在,因此文档类还包含创建这些对象所需的工厂功能。创建的节点对象具有ownerDocument()函数,该函数将它们与在其上下文中创建的文档相关联。最常使用的DOM类是QDomNode,QDomDocument,QDomElement和QDomText。

解析的XML在内部由对象树表示,可以使用各种QDom类访问这些对象。所有QDom类仅引用内部树中的对象。一旦删除引用了它们的最后一个QDom对象和QDomDocument本身,DOM树中的内部对象将被删除。

元素,文本节点等的创建是使用此类中提供的各种工厂功能完成的。使用QDom类的默认构造函数只会导致无法操纵或将其插入Document的空对象。

  • QDomDocument成员函数

 

QDomDocument::QDomDocument(const QString &name)

构造函数

QDomAttr QDomDocu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值