qt--Qml控件库如何从外部导入

文章目录

  • 两种方案
    • [方案1 给项目添加子项目](#方案1 给项目添加子项目)
    • [方案2 使用pri文件](#方案2 使用pri文件)
  • [综合来说 :](#综合来说 :)

两种方案

方案1 给项目添加子项目

利用git的特性

对应的子项目就是我们的控件库

然后需要哪个控件 在父项目的qrc路径进行导入

即可将控件库里面的控件给导入项目 在使用的时候 使用模块中

在项目文件里面

import QmlCommon 1.0 即可使用

在main.cpp 文件里面

去导入对应的qml文件的路径

在pro文件中

导入对应的QmlCommon的路径 这样不会爆红

子项目和夫项目代码互不影响 提交代码的时候 如果都修改到了 需要分两次提交

方案2 使用pri文件

在项目的pro文件中

这里直接包含pri文件 导入控件库

对应的qml控件库pri文件

cpp 复制代码
RESOURCES += $$PWD/QmlCommon/QmlCommon.qrc

win32{
    path=$$system("cd")
    path ~=s,\\\\,/,g
}
DEFINES += QmlCommonImportPath=\\\"file:///$${path}/\\\"

# Additional import path used to resolve QML modules in Qt Creator's code model
QML_IMPORT_PATH	+= $$PWD

这里其实是 定义了QmlCommonImportPath 的绝对路径 这样导入的时候 才不会出错

对应的main文件里面添加导入路径

使用方式

直接在项目文件里面导入

import QmlCommon 1.0

即可正常使用

综合来说 :

pri的方式 更方便 但是细节比较多 容易出错

pri的这种方式 rec的资源文件是自带的

子模块的方式 要简单点 但是需要导入控件库的人自己去添加控件 和添加资源到项目的rec资源文件中

相关推荐
OPEN-F24 分钟前
C++综合实战:面向对象图书管理系统
开发语言·c++
ttwuai1 小时前
Go 后台清空操作日志失败,权限和无 WHERE 删除怎么排查?
开发语言·后端·golang
西西弗Sisyphus1 小时前
Qt 在无边框窗口上做一套换肤系统
开发语言·数据库·qt
西西弗Sisyphus1 小时前
Qt 启动 UsageStatistic 插件报错
开发语言·qt
NeoGressAI外贸数字化1 小时前
外贸独立站零询盘排查:从 Google Search Console 到 PageSpeed 的技术实操
开发语言·c++
神仙别闹1 小时前
基于 QT(C++)实现操作系统
数据库·c++·qt
无小道1 小时前
C/C++——异步编程小记
开发语言·c++·c++11
奇树谦1 小时前
Pimpl 模式(d-pointer)详解:如何解决 C++ 头文件过大、编译依赖和 ABI 兼容问题
开发语言·c++
DevOpenClub1 小时前
Markdown、HTML 和 PPT 如何稳定交付:文档转换任务的幂等发布流程
开发语言·前端·c#·html·powerpoint
程序员夏洛1 小时前
谈谈你了解的最常见的几种设计模式,说说他们的应用场景
开发语言·python·模板方法模式