首页 文章

如何正确添加QML项目中的图像路径

提问于
浏览
0

我要练习this example为此我在Windows 7机器上使用Qt Creator 4.3.0创建了一个名为Main2的Qt Quick Console 2应用程序项目 .

main.qml的代码如下所示:
like this
,我在Application Output窗口中收到以下错误:

该计划意外完成 . C:\ Users \ Abbasi \ Documents \ QML \ Main2 \ Main2 \ build-Main2-Desktop_Qt_5_9_0_MinGW_32bit-Debug \ debug \ Main2.exe崩溃 . 启动C:\ Users \ Abbasi \ Documents \ QML \ Main2 \ Main2 \ build-Main2-Desktop_Qt_5_9_0_MinGW_32bit-Debug \ debug \ Main2.exe ...启用QML调试 . 只能在安全的环境中使用它 .

请问路径有什么问题?

图像位于桌面上名为images的文件夹中 . 如何将它们移动到项目下的文件夹中,一步一步意味着什么?

1 回答

  • 3
    • 将images文件夹复制到项目文件夹中

    • 右键单击您的项目 - 添加新的 - Qt - 资源文件 - images.qrc

    • 右键单击 - 添加现有文件,转到/图像并选择要添加的内容

    • 或者,您可以直接使用"add existing directory"选项添加目录中的所有文件

    然后从QML你只需:

    Image { source: "images/whatever.jpg" }
    

    这样,图像可以整齐地打包在可执行文件中 . 在大多数情况下,这是可以的,除非你有数千兆字节的图像 . 它还有助于防止人们用亵渎版本替换您的库存图像;)

    为图像创建单独的资源文件将do wonders for your build times .

    如果你热衷于文件系统访问,那就是绝对的(请不要在 生产环境 中做那个 ever )或亲戚,你必须在路径前加上 file:// 来告诉Qt你想要文件系统而不是内部资源 .

    更新:由 main.cpp 文件显示, the actual problem is you are using a project template that uses QQmlApplicationEngine. The tutorial you are following dates back to the days before that, and uses QQuickView . 后者可以将任何QML元素作为根,但前者需要有一个 ApplicationWindow ,这就是你没有得到任何输出的原因 . 所以你需要将现有代码包装在_2815881中:

    ApplicationWindow {
      visible: true
      width: 640
      height: 480
    
      // your code goes here
    }
    

相关问题