QT武林秘籍——我在QT中遇到的那些坑
(1)QUdpSocket接收数据
进入槽后,要用这种方式读取,否则可能会导致不发readyRead()信号while(udpSocket->bytesAvailable()){udpSocket->readDatagram(ch,size);}
(2)QTcpSocket删除
一定要用deleteLater一定要用deleteLater一定要用deleteLater否则会导致用户对象溢出
(3)运行文件附带调试输出窗口
CONFIG += console pro配合->http://github.com/851896022/QLog
(4)可以在pro文件中写上标记版本号+ico图标
VERSION = 2019.08.08RC_ICONS = main.ico
(5)解决socket传输后等中文乱码
转成base64传输QByteArray(QString.toStdString().data()).toBase64()
(6)QT连接MySql后,长时间无操作(默认8小时)会断开。
isOpen()等函数无法判断,需执行sql语句才能发现失败QSqlDatabase.setConnectOptions("MYSQL_OPT_RECONNECT=1");↑断开后可自动重连
(7)在槽使用sender()函数可获取到发出信号的对象的指针。
(8)子线程中使用QAxWidget不成功,原因是在QApplication的主线程中,会自动初始化COM库,而新开辟的子线程不会自动初始化COM库,所以需要我们手动来初始化。
//添加头文件#include <windows.h>//在线程开始的时候初始化COM库:HRESULT r = OleInitialize(0);if (r != S_OK && r != S_FALSE){qWarning("Qt:初始化Ole失败(error %x)",(unsigned int)r);}使用结束后需要释放掉:OleUninitialize();
(9)file.write()以后调用file.flush()避免数据在缓存中未成功写入。
(10)延时。
{QEventLoop loop;QTimer t;connect(&t,SIGNAL(timeout()),&loop,SLOT(quit()));t.start(1000);loop.exec();
}
QT武林秘籍——我在QT中遇到的那些坑相关推荐
- Qt武林秘籍学习笔记摘要
1 原文链接 Qt开发经验: 自己总结的这十多年来做Qt开发以来的经验,以及Qt相关武林秘籍电子书,会一直持续更新增加,欢迎各位留言增加内容或者提出建议,谢谢! (gitee.com) 编程语录: 自 ...
- 大佬的QT武林秘籍(整理)
根据大佬的武林秘籍,整理出来一些网的时候自己可以直接查看 大佬主页:https://blog.csdn.net/feiyangqingyun?type=blog 1.QTimer::singleSho ...
- Qt开发经验总结之武林秘籍
一.开发经验总结 当编译发现大量错误的时候,从第一个看起,一个一个的解决,不要急着去看下一个错误,往往后面的错误都是由于前面的错误引起的,第一个解决后很可能都解决了. 定时器是个好东西,学会好使用它, ...
- Qt开发经验总结之武林秘籍(转)
来源: http://www.qtcn.org/bbs/read-htm-tid-85795-ds-1.html#tpc 一.开发经验总结 1. 当编译发现大量错误的时候,从第一个看起,一个一个的解 ...
- 在QT搭建的播放器外壳中嵌入SDL的窗口
[cpp] view plaincopy print? <span style="font-family: Arial, Verdana, sans-serif; white-spac ...
- qt 不显示 mysql 数据表中的内容_qt 数据库操作总结
整理一下 QT 操作数据库的一些要点,以备以后的查询学习(主要是操作 mysql ). 转载于:https://www.cnblogs.com/lsgxeva/p/7852102.html 首先,要查 ...
- QT事件事件之一:Qt中的事件处理与传递
QT事件事件之一:Qt中的事件处理与传递 前言 一.简介 二.QT中的事件 三.事件的实现的方法 前言 在QT中,事件是我们很常用的东西,以下是我用事件时总结和做法 一.简介 在QT中,事件作为一个对 ...
- qt mysql 系统时间_使用QT和参数在SQLite数据库中插入日期时间
我想从C++/QT应用程序执行插入到SQLite数据库. 我想要插入数据的表格中的一列是datetime(yyyy-mm-dd hh:mm:ss).使用QT和参数在SQLite数据库中插入日期时间 我 ...
- Linux使用cmake编译项目,如何使用cmake在linux中构建Qt项目(How to build Qt project in linux with cmake)...
如何使用cmake在linux中构建Qt项目(How to build Qt project in linux with cmake) 我使用的是ubuntu 14.04,cmake 2.8.12.2 ...
最新文章
- Python中自定义类如果重写了__repr__方法为什么会影响到str的输出?
- linux服务器后台运行程序
- Java设计模式(八):外观设计模式
- 分享一次 Java 内存泄漏的排查
- kafka 不同分区文件存储_Kafka文件存储机制思考及答案:为什么要分区呢?分区存了哪些内容?...
- 多租户数据库设计方法:独立数据库
- 典型的简单权限分配系统方法介绍
- CJSON之完全基于C库函数的使用
- 如何在Eclipse中如何自动添加注释和自定义注释风格
- java踩坑记-getResourceAsStream
- GEE开发之Landsat8计算MNDWI和数据分析
- CDIO工程实践 无线充电智能循迹小车制作
- 自在服务器虚拟化,新破晓诛仙3单机版16职业商业仿官青罗天界灵境神隐虚拟机一键端GM网单...
- layui select 默认选中 vue select 动态选中
- cmsis-dap ubuntu Error: unable to find CMSIS-DAP device
- Silvaco TCAD仿真2——Silvaco TCAD 档名
- 算法设计 分治法 快速排序 C语言实现
- 数据库容灾技术之–数据容灾技术比较
- 医院患者随访工作信息化建设可行性报告
- geogebra画一段椭圆
热门文章
- 【codevs 2833】奇怪的梦境
- 连接Mysql时,出现Establishing SSL connection without server's identity verification is not .......警告
- 400G如何引领下一代数据中心网络?
- 超超详细ReactRouter v6版本的基本使用
- 【OpenGL 学习笔记03】点画多边形
- CTFShow re2 (RC4
- python 微信发送图片给好友_Python给指定微信好友自动发送信息和图片
- pytorch-forecasting
- maven项目集成swagger3生成json和yaml格式的openapi文件
- 创建MockMvc对象时空指针异常NullPointException的解决办法