qt错误集合

(1)

在ubuntu下装了QT 5后打开之前在windows做的工程,编译出错就是下面这句

connect(clientSocket,&QTcpSocket::readyRead,this,&Monitor::clientReadMessage); //ubuntu下这句会报错
在这里插入图片描述
百度搜了很多都找不到原因,最后搜关键词qt is protected让我找到了这个
https://stackoverflow.com/questions/30151127/error-qactiontriggered-is-protected-cannot-connect-a-signal
网站加载比较慢,这里是截图,他的问题也是下面这句报错
在这里插入图片描述
在这里插入图片描述
找到原因就是Qt 4和Qt 5 connect()的语法不同
https://blog.csdn.net/aidansen/article/details/79008359?utm_source=blogxgwz3
改为Qt 4 的SIGAL和SLOT就解决了,不过我查了qt的版本
在这里插入图片描述
版本是qt 5,不过为什么用qt 5的调用语法反而会报错

找到原因了,qt 工具->选项,下图构建套件选择的qt版本是qt4, 所以编译时按qt4的语法来
在这里插入图片描述

(2)显示中文乱码

https://blog.csdn.net/libaineu2004/article/details/19245205
在main.cpp里面加入下面语句,解决

#include <QTextCodec>  

QTextCodec *codec = QTextCodec::codecForName("UTF-8");//情况2
QTextCodec::setCodecForTr(codec);
QTextCodec::setCodecForLocale(codec);
QTextCodec::setCodecForCStrings(codec);

(3)编译出错 /usr/bin/ld 找不到 -lGL

https://blog.csdn.net/linda_ds/article/details/70243423

locate libGL.so
/usr/lib/i386-linux-gnu/mesa/libGL.so.1
/usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0

sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0 /usr/lib/libGL.so

(4)无法输入中文

https://www.cnblogs.com/findumars/p/4926687.html

cd /opt/qt59/plugins/platforminputcontexts
cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so .
chmod +x  libfcitxplatforminputcontextplugin.so 

(5)B使用A类的ui成员时,出现如下错误
error: invalid use of incomplete type ‘class
要在A类的头文件包含“ui_A.h”,同时Ui::A *ui 要声明成public

(5)windows下才有的问题

setGeometry: Unable to set geometry 800x800+8+30 on QWidgetWindow/‘MainWindowWindow’. Resulting geometry: 800x750+8+30 (frame: 8, 30, 8, 8, custom margin: 0, 0, 0, 0, minimum size: 12x30, maximum size: 16777215x16777215).

添加下面这行代码解决
setWindowFlags(Qt::WindowCloseButtonHint | Qt::MSWindowsFixedSizeDialogHint);

(6)qrc资源问题

Qt:Error:No rule to make target ’ … /…/??.png’,needed by ‘debug/qrc_resource.cpp’

https://blog.csdn.net/weixin_38815609/article/details/89401190

(7)由Q_OBJECT引起的undefined reference to `vtable for XX

https://blog.csdn.net/qinpanke/article/details/8066397

(8)Qt在ui设计中添加的控件或改变控件,编译运行后无法显示问题

https://blog.csdn.net/qq_23301703/article/details/79647040

选择项目,将项目中的 Show build 选项去除调

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值