大佬教程收集整理的这篇文章主要介绍了如何在 Qt Creator .pro 项目中使用 Design Studio 中的 .qmlproject .ui.qml 表单?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我参与了一个项目,其中有一名设计师在 Design studio 中开发 .ui.qml 表单(带有相关资产),而我(开发人员)则负责现有的 Qt Creator .pro 项目。我想将这两个项目保存在不同的存储库中。
有人能指点一下涵盖此内容的教程吗?还是维基页面?或者网络上的其他一些资源解释了如何做我想做的事情,即在我的 .pro 项目的 QtQuick QML 文件中使用来自 .qmlproject 的 .ui.qml 资源。
感谢您的指点。
-----更新更多细节-----
我有 2 个项目,名为 marge 和 patty。 Patty 是一个 .qmlproject
,由设计师在 Qt Design studio 中工作,在 .ui.qml
文件中包含 UI 表单以及相关的图形资产和主题等。它位于自己的 git 存储库中。另一方面,Marge 是我在 Qt Creator 中开发的 .pro
应用程序——它是 QtQuick QML 和支持 C++ 的混合体。我认为这是一种相当典型的方法,但如果我正在做的事情让我的生活变得更加困难,请为我指明不同的方向。
在 Marge 的 qml.qrc
文件中,我添加了一个包含 3 个条目(到目前为止)的元素,这些条目引用了 patty 项目中的 .qml 和 .ui.qml 资源:
<qresource prefix="/forms">
<file>../patty/StatusbarForm.ui.qml</file>
<file>../patty/Tempo.qml</file>
<file>../patty/TempoForm.ui.qml</file>
</qresource>
我确实在 marge 项目导航器中的 Qt Creator 中看到了这些资源,但我现在不知道如何在 marge 中的其他 QML 文件中使用这些资源。例如,我希望能够有一个 Statusbar.qml 文件,其中包含如下内容:
import QtQuick 2.0
import "qrc:/forms/../patty/StatusbarForm.ui.qml"
StatusbarForm {
}
这对我不起作用,这就是我想要弄清楚的。
在ConverTing UI Projects to Applications中有一个名为Qt Design studio Manual的章节。
基本上,您只需将 QML 文件和相关资产从 Qt UI Quick 项目(Design studio 项目)复制到基于 qmake 的应用程序项目(.pro 项目),并将它们添加到其中的 Qt 资源文件中。
仅供参考:Qt Creator 支持添加新的资源文件以及将现有文件和现有目录添加到资源中。
对更新部分的回答:
您可以在资源文件中使用 file 标记的 alias
属性。
<qresource prefix="/">
<file alias="StatusBarForm.ui.qml">../patty/StatusBarForm.ui.qml</file>
</qresource>
如果您将 qresource 标记的 prefix
属性保留为指向 root 如上所述,则不需要在 QML 文件中导入表单目录。否则,您添加 import "qrc:/forms"
,以便导入目录,而不是单个文件。
import QtQuick 2.0
StatusBarForm {
}
为外部资源添加一个单独的资源文件是有意义的,例如patty.qrc,而不是将所有内容收集到默认生成的 qml.qrc。 (Qt Creator:右键单击项目顶部 -> 添加新... -> Qt -> Qt 资源文件)
以上是大佬教程为你收集整理的如何在 Qt Creator .pro 项目中使用 Design Studio 中的 .qmlproject .ui.qml 表单?全部内容,希望文章能够帮你解决如何在 Qt Creator .pro 项目中使用 Design Studio 中的 .qmlproject .ui.qml 表单?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。