使用CMake时如何在QtCreator项目树中对.ui文件进行分组
解决Qt Creator CMake项目中.ui文件未分组显示问题
Qt Creator对CMake项目的默认文件分组逻辑和qmake不同,不会自动将.ui文件归到对应头文件分组,可通过以下两种方案解决:
方案1:修改CMakeLists.txt配置(推荐,全团队统一生效,无需单独修改IDE设置)
通过CMake内置的source_group命令显式指定.ui文件的分组,Qt Creator会自动识别该配置同步项目树结构:
# 匹配项目内所有.ui文件,可根据你的目录结构调整匹配规则 file(GLOB_RECURSE UI_FILES CONFIGURE_DEPENDS *.ui) # 可自定义分组路径,示例1:创建单独的UI Files一级分组 source_group("UI Files" FILES ${UI_FILES}) # 示例2:归到Headers分组下作为子分组,和qmake展示逻辑一致 # source_group("Headers/UI" FILES ${UI_FILES}) # 务必将UI_FILES添加到目标的源文件列表中,替换下方<你的目标名称>为实际的add_executable/add_library目标名 add_executable(<你的目标名称> # 此处保留你原本的.cpp、.h文件列表 ${UI_FILES} )
配置完成后右键项目选择重新运行CMake,刷新后项目树就会按照你定义的分组展示.ui文件。
方案2:修改Qt Creator本地配置(仅当前设备生效,无需修改项目代码)
如果不想改动项目的CMake配置,可以直接调整IDE的展示规则:
- 打开项目侧边栏,点击项目树顶部的漏斗形过滤按钮,勾选
按源分组展示 - 如果需要把.ui文件归到默认头文件分组,进入
工具 > 选项 > C++ > 项目管理,在文件分类设置项中将ui扩展名添加到Headers分类的匹配规则中即可
如果你的项目通过qt_wrap_ui生成ui_*.h头文件,也可以将生成的头文件路径添加到source_group规则里,方便同步查看原.ui文件和生成的头文件。
内容的提问来源于stack exchange,提问作者George
相关产品推荐
相关产品推荐

