QT5在Cmakelist中配置qrc

本文介绍了在使用Qt5开发过程中如何将logo.rc和example.qrc等资源文件添加到MyApp项目中,通过set和qt5_add_resources函数实现资源编译。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

set(APP_ICON_RESOURCE_WINDOWS"${CMAKE_CURRENT_SOURCE_DIR}/Resource.rc") #logo.rc 
qt5_add_resources(SOURCES example.qrc) #resource.qrc
#分别添加logo和qss等资源
add_executable(MyApp main.cpp Resource.rc ${SOURCES})
当你需要在CMake项目中集成Qt的UI界面文件(`.ui`),并且想通过CMake自动生成Qt资源文件(`.qrc`)以及相关的`.cpp`和`.h`头文件,可以按照以下步骤进行配置: 1. 首先,在你的CMakeLists.txt文件中,你需要找到Qt的安装路径,通常在包含`QT5_DIR`或`find_package(Qt5Widgets REQUIRED)`这样的行。确保已经正确设置了Qt的模块(例如`Qt5Widgets`)。 ```cmake find_package(Qt5Widgets REQUIRED) include(${QT5_USE_FILE}) ``` 2. 使用`QT_QMAKE_EXECUTABLE`变量找到QMake工具: ```cmake execute_process(COMMAND ${QT_QMAKE_EXECUTABLE} -query QT_INSTALL_UIC EXECUTE_OUTPUT_VARIABLE UI_COMPILER_PATH) message(STATUS "Found Qt UIC at: ${UI_COMPILER_PATH}") ``` 3. 创建一个函数来处理`.ui`文件到`.cpp`文件的转换: ```cmake function(generate_ui_files INPUT.ui OUTPUT.cpp OUTPUT.h) get_filename_component(ui_path ${INPUT} PATH) get_filename_component(input_name ${INPUT} NAME_WE) execute_process( COMMAND ${UI_COMPILER_PATH} ${INPUT} WORKING_DIRECTORY ${ui_path} OUTPUT_VARIABLE ui_generated_code ERROR_VARIABLE error_output OUTPUT_STRIP_TRAILING_WHITESPACE ) file(WRITE "${ui_path}/${output_name}.cpp" "${ui_generated_code}") add_custom_command( OUTPUT ${OUTPUT.cpp} COMMAND ${CMAKE_COMMAND} -E copy_if_different ${ui_path}/${input_name}.h ${OUTPUT.h} DEPENDS ${INPUT} VERBATIM ) endfunction() ``` 4. 现在,你可以调用这个函数处理每个`.ui`文件: ```cmake generate_ui_files("path/to/your/ui_file.ui" "path/to/your/generated/cpp_file.cpp" "path/to/your/generated/header_file.h") ``` 5. 最后,记得将生成的源文件添加到项目的源码列表中,并链接到Qt库: ```cmake add_executable(your_target_name main.cpp ${OUTPUT.cpp}) target_link_libraries(your_target_name Qt5Widgets) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值