使用CMake访问VS 2017中的Qt资源文件

时间:2017-06-24 15:20:37

标签: visual-studio qt cmake

我在使用CMake访问VS 2017项目中的qt资源文件时遇到问题。我能够使用Qt Creator访问qrc文件。我有以下问题:

  • 我在哪里放置资源文件?我最好将资源文件放在根目录中。我试图将这些文件放在根控制器和它们将被调用的目录中。
  • 我应该对CMakeLists.txt文件做出哪些更改?
  • 我如何参考资源文件?我已经尝试了我可以在互联网上找到的所有指令。但它们似乎都不起作用。例如,我尝试过:":/ prefix / filepath / filename"或":前缀/文件路径/文件名"。

非常感谢!

1 个答案:

答案 0 :(得分:0)

您可以将.qrc文件放在所需的位置,对于我在/res文件夹中创建的项目,您可以选择。您可以在资源上添加文件,将.qrc文件作为普通xml文件手动编辑。这是一个简单的例子:

<RCC>
    <qresource prefix="/menu_img">
        <file alias="cancel_img">icons/cancel-512.png</file>
        <file alias="open_img">icons/folder-512.png</file>
        <file alias="print_img">icons/printer-512.png</file>
    </qresource>
</RCC>

在此资源文件中,图片位于文件夹icons内,.qrc位于文件夹外。

之后您的.qrc文件已准备好(假设您使用的是qt5),您必须在CMakeList.txt这一行添加:

qt5_add_resources(PROJECT_RESOURCE path_to_rosource_file/resources.qrc)

然后在你的目标上你必须添加这个rosource:

add_executable(
   ${TARGET_PROJECT}
   ${PROJECT_SOURCES}
   ${PROJECT_HEADERS}
   ${PROJECT_RESOURCES})

现在您的资源可以像往常一样在项目中使用:/menu_img/cancel_img