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

在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文件生成的程序和存放头文件的目录不在一起,但是生成的程序里会在生成目录下找头文件,所以肯定是找不到的。

相关推荐
代钦塔拉8 小时前
Qt4 vs Qt5 带参数信号槽的连接方式详解
开发语言·数据库·qt
不午休の野猫10 小时前
vs + qt环境编译.sln项目时报无法解析的外部符号metaObject && qt_metacast
开发语言·qt
牵牛老人16 小时前
CAN通讯实战:Qt基于周立功 USBCAN 的 CAN 总线通信开发全攻略
网络·qt·系统架构
_君莫笑17 小时前
Qt+Qml前后端分离上位机软件技术方案
c++·qt·用户界面·qml
想取一个与众不同的名字好难18 小时前
QT webSocket接收客户端发送的双目摄像头数据并显示
开发语言·qt·websocket
基德爆肝c语言18 小时前
Qt控件:按钮类
开发语言·qt
基德爆肝c语言21 小时前
Qt:显示类控件
开发语言·qt·命令模式
小许同学记录成长1 天前
基于 QxOrm 的 Qt 持久化层技术指南
开发语言·数据库·qt
辞旧 lekkk1 天前
【Qt】信号和槽
linux·开发语言·数据库·qt·学习·mysql·萌新
liuhuizuikeai1 天前
可视化门禁---Linux/Qt+SqLite篇
linux·运维·qt