关于自定义控件,头文件找不到问题的解决办法

在ui文件中使用控件提升的时候,突然发现ui_xxxx.h竟然报错了,

这在之前是没有碰到过,苦思过后认为是环境变量的问题,因为现在正在用的构建套件是 mingw的,但在此之前我一直用的是msvc,并且环境变量的配置也是MSVC,如图:

于是带着尝试的态度,将环境变量改为mingw的,再次打开QtCreator,发现结果还是一样,仍然报错。

再到后来根据GPT的说法,尝试将头文件的路径改为绝对路径。留下:

#include "F:\code_review\Qt-WorkSpace\fight\KuGouApp\GLTabWidget.h"

现在确实没有报错,但新的问题是这个路径仅仅能在自己的电脑上使用,这就很不方便。必须要使用相对路径

#include "./../../../../GLTabWidget.h"

这样也没有报错,能够成功运行,但是这样不够美观。

经过网上查找证明需要在CMake文件中添加头文件目录 ,在CMake中添加下面这段就可以解决了。

INCLUDE_DIRECTORIES(
${PROJECT_SOURCE_DIR}
)

出现问题的原因是Qt creator通过ui文件生成的程序和存放头文件的目录不在一起,但是生成的程序里会在生成目录下找头文件,所以肯定是找不到的。

相关推荐
__BMGT()8 分钟前
参考文章资源记录
开发语言·c++·qt
lqj_本人1 小时前
鸿蒙原生与Qt混合开发:性能优化与资源管理
qt·harmonyos
lqj_本人2 小时前
鸿蒙Qt字体实战:消灭“豆腐块“乱码与自定义字体加载
qt·华为·harmonyos
大牙Adela2 小时前
在Mac上通过Multipass虚拟机中的Ubuntu系统使用Graphviz工具
c语言·qt·ubuntu·macos·multipass·graphviz
Wallace Zhang3 小时前
PySide6 + QML - 调试日志01 -告别打印log中文乱码,快速且简单地解决
qt·pyside6·qml
QT 小鲜肉5 小时前
【数据库】MySQL数据库的数据查询及操作命令汇总(超详细)
数据库·笔记·qt·mysql
带土115 小时前
1. Qt-的安装和环境变量的配置
开发语言·qt
喵个咪18 小时前
Qt 6 实战:C++ 调用 QML 回调方法(异步场景完整实现)
前端·c++·qt
扶尔魔ocy21 小时前
【QT opencv】手动去噪--网格化获取区域坐标
开发语言·qt·opencv
Hat_man_21 小时前
虚拟机Ubuntu22.04交叉编译Qt5.15.2(ARM64)
开发语言·qt