【问题标题】:Using QT .qrc File with Visual Studio Proj...?在 Visual Studio Proj 中使用 QT .qrc 文件...?
【发布时间】:2020-01-23 11:32:29
【问题描述】:

我有一个使用 CMake 使用 QT 和 VTK 构建的 Visual Studio 2017 项目。我需要使用图像资源,并希望使用 QT 的 .qrc 资源系统。

在不使用 QT 项目文件时,这方面的信息似乎很少且复杂。我发现了这个:

  1. 创建一个 .qrc 文件,其中包含您想要包含的资源列表

  2. 创建在该文件(文档)上调用 rcc 的自定义构建步骤

  3. 编译生成的 cpp 源文件并将其链接到您的程序中。

How to use Qt resource files in Visual Studio without a Qt project?

我现在完全不知道解决这个问题的正确方法是什么,而且这还没有足够的信息。

【问题讨论】:

  • 你提到的三点都是正确的。哪一项你没有完成?

标签: c++ qt cmake


【解决方案1】:

将此添加到您的 CMake:

set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)

这将自动运行 moc 和 rcc 编译器。

然后使用以下添加资源并链接它们

# Compiles binary resources into source code and puts the names into RESOURCES variable
qt5_add_resources(RESOURCES example.qrc)

# Adds the RESOURCES source code to your application so it will be linked
# and part of your executable
add_executable(exampleApplication main.cpp ${RESOURCES})

进一步阅读:

【讨论】:

  • 非常感谢,我只是不明白第二个块...特别是添加可执行文件,我的 CMake 文件中已经有类似的内容。
  • @AlexanderAlexander 我添加了更多解释。我希望这会让它更清楚。否则你将不得不具体解释你不明白的地方。
  • 非常感谢 cmets 我只是不知道在哪里放置第二个块。我可以把它放在 CMake 文件的末尾,在 autoMOC 和 RCC 之后吗?
  • 我也已经在我的文件中调用了 add_executable,所以添加这个会导致构建时出错
  • 您将qt5_add_resources 放在您的add_executable 调用之前,并将${RESOURCES} 添加到您已经存在的add_executable 中,就像您添加任何其他文件一样。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-07-10
  • 2020-06-12
  • 2014-07-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-19
相关资源
最近更新 更多