我需要使用c++解析一个xml文件并动态填充QT UI。
在教程,链接,建议,源代码示例方面的任何帮助将不胜感激。我已经通过了大多数类似的堆栈溢出链接,但它没有多大帮助。
提前感谢。
看一下QXmlStreamReader和Bookmarks的例子。
基本上你要做的是打开一个XML文件(使用QFile),逐行读取它并创建必要的ui对象(不要忘记之后关闭文件)。
让我们假设您的XML文件看起来像这样:
<ui>
<mainwindow width="800" height="600">
<label position="center">FOO</label>
...
</mainwindow>
</ui>
你会使用类似readNextStartElement()的东西来读取<mainwindow ..>
,读取其属性并调用一个方法,该方法使用你读取的数据创建一个QMainWindow。然后readNextStartElement()到<label ...>
,调用创建标签的方法,并根据属性将其添加到主窗口,等等。