Qt CMake 项目中 QML 和资源文件的引入方式

初入CMake,和之前的qmake差别还是挺大的,笔者在边学习的同时,边整理一下目前使用到的文件引入方法,以供参考...

一、引入QML文件

先在本地文件夹中创建好分类的文件夹和qml文件,然后在Qt Creator中右键Source Files添加现有文件(依旧不理解为什么Qt Creator不直接在本地创建文件夹)

然后查看CMakeLists中的qt_add_qml_module

c 复制代码
//如我这边的CMakeList.txt
qt_add_qml_module(apptest
    URI test								//这边是模块名
    VERSION 1.0							//这边是版本号
    QML_FILES main.qml
    QML_FILES Module/TestMd.qml
)

然后在需要引入的qml文件夹中import模块,并使用即可

c 复制代码
//main.qml
import QtQuick
import test 1.0

Window {
    width: 640
    height: 480
    visible: true
    title: qsTr("Hello World")

    TestMd{
        anchors.centerIn: parent
    }
}

二、引入图片文件

右键apptest,添加新文件Qt Resource File。然后依旧在本地文件夹中创建好文件夹并拖入图片文件,最后在Qt Creator的Resources文件夹中右键添加现有文件即可。

这时注意CMakeLists中的qt_add_qml_module

c 复制代码
//注意这边的路径
qt_add_qml_module(apptest
    URI test
    VERSION 1.0
    QML_FILES main.qml
    QML_FILES Module/TestMd.qml
    RESOURCES Resrc.qrc
    RESOURCES Icon/1.png
)

在qml中使用QML模块URI+资源在模块中的相对路径(即qt_add_qml_module中的路径) 调用即可

c 复制代码
//示例
import QtQuick
import test 1.0

Window {
    width: 640
    height: 480
    visible: true
    title: qsTr("Hello World")

    Image {
        id:testimg
        source: "qrc:/test/Icon/1.png"
        anchors.centerIn: parent
        height: 80
        width: 50
    }
}

三、后续待补...

相关推荐
sunshine22 girl16 分钟前
Java学习六 Java常见API-1-Radom随机数
java·开发语言·学习
可乐鸡翅yeah_20 分钟前
hls.js 手动自定义 http 请求 loader,修改请求头实战
开发语言·前端·javascript·网络协议·http·ecmascript·m3u8在线
潼心1412o36 分钟前
C++初阶(长期更新)第6讲:类和对象(下)
开发语言·c++·算法
夜晚回家1 小时前
Python 零基础入门 | 输入的数字为什么不能直接算
开发语言·python
时间的拾荒人1 小时前
Qt 事件机制全解析:从事件处理到事件过滤器
开发语言·qt·面试
-森屿安年-1 小时前
按身高排序
c++·算法
于指尖飞舞1 小时前
java面试题总结
java·开发语言
(Charon)2 小时前
【C++面试】vector底层原理:扩容、拷贝移动与迭代器失效
c++·面试
zhangzeyuaaa2 小时前
深入理解 Ruby 运算符:本质、分类、坑点与重载实战
开发语言·前端·ruby
一木 之林3 小时前
DeepSeek Agent 开发(一)
开发语言·前端·javascript