Qt提升控件编译报错:ui_mainwindow.h找不到texteditevents.h
解决Qt提升控件后找不到头文件的问题
检查头文件包含路径:Qt Designer提升控件后会自动在
ui_mainwindow.h中插入#include "texteditevents.h",如果该头文件不在编译器默认搜索路径内,就会报错。需要在CMakeLists.txt中通过target_include_directories添加头文件所在目录,示例:target_include_directories(你的项目名 PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/头文件所在子目录)若头文件和mainwindow.cpp同目录,直接用
${CMAKE_CURRENT_SOURCE_DIR}即可。验证UI提升配置:打开Qt Designer的提升控件对话框,确认头文件栏填写的
texteditevents.h拼写正确(注意Linux系统大小写敏感),提升类名称为TextEditEvents,保存UI文件后让Qt重新生成ui_mainwindow.h。清理缓存后重新构建:旧构建缓存可能导致异常,执行
make clean(或Qt Creator中点击「清理项目」),删除构建目录下所有文件,再重新运行CMake和构建命令。确认头文件实际位置:检查
texteditevents.h是否确实存在于你指定的目录,未被误删或移动。可以手动在mainwindow.cpp顶部添加#include "texteditevents.h",若仍报错,说明路径肯定存在问题。核对CMakeLists.txt的文件列表:确保
texteditevents.h和texteditevents.cpp已正确添加到项目源文件中,示例:add_executable(你的项目名 main.cpp mainwindow.cpp mainwindow.h texteditevents.cpp texteditevents.h mainwindow.ui )
内容的提问来源于stack exchange,提问作者Corey Wolfe
相关产品推荐
相关产品推荐

