调试经验
斩荆披棘
这个作者很懒,什么都没留下…
展开
-
QObject: Cannot create children for a parent that is in a different thread.
使用以下方法创建线程时:QThread *thread = new QThread;moveToThread(thread);thread->start();在槽里面的函数就在子线程中1.解决QObject: Cannot create children for a parent that is in a different thread.出现警告原因在使用Qt多线程时,若在主...原创 2020-01-19 21:07:47 · 2379 阅读 · 0 评论 -
linux Qt加载动态库
1.创建一个C++库的代码,并命名为libTest2.包含接口头文件#include “…/server/common.h”并在该头文件中定义枚举类型,相关结构体,一级回调函数typedef void (*DISSECTION_PROGRESS_CALLBACK)(int taskId, float progress, FileInfo *detail);typedef void (*...原创 2019-11-25 15:29:22 · 2019 阅读 · 0 评论 -
Qt动态布局
背景:有些数据是不定时加载的,比如连接蓝牙,连接1个蓝牙设备就会添加1个蓝牙的相关信息;1个蓝牙设备数据与另1个蓝牙设备数据不能间隔太大,但是使用QVBoxLayout就会将上面2个蓝牙占满全屏,即使使用弹簧,也只能满足2个蓝牙向上对其;假如再次连接多个蓝牙,因为前面有了弹簧,就会使全部蓝牙不能向上对其了.解决办法:动态布局.每次有新的设备连接就重新布局,再最后面添加弹簧,这样就能保证...原创 2019-10-12 20:02:01 · 345 阅读 · 0 评论 -
QString解析
(1)去掉字符串前后的空格(2)根据实际情况截取数据比如: “System Timezone --> /datetime/System Timezone”截取前面的一段:value.section(’-’, 0, 1).remove(’-’).trimmed();结果: “System Timezone”截取后面的一段:value.section(’>’, 1, -1)...原创 2019-09-03 20:32:54 · 943 阅读 · 0 评论 -
Qt lupdate/lrelease
使用Qt lupdate更新ts文件1.Qt lupdate 生成ts文件使用下面的命令更新ts文件:lupdate search_autoComple.pro -ts res_language_chinese.ts工作原理:使用Qt在代码中调用: tr(“xxxx”),如下:tr("English");tr("Test", "wubw1");tr("Test", "wubw2");...原创 2019-08-17 10:43:22 · 3333 阅读 · 0 评论 -
Qt读取数据量多的xml文件(ts文件)
/ xml文件截取内容<message>**<source>Test Source</**source><translation>测试</translation><extra-contents_path>Test</extra-contents_path>通过下面loadxml函数解析后数据如下:+:...原创 2019-08-17 09:46:04 · 814 阅读 · 0 评论 -
迭代器删除数据
遍历方式1:QList<TimezoneItem *> m_zoneList;QList<TimezoneItem *>::Iterator iter = m_zoneList.begin();for (; iter != m_zoneList.end(); iter++) {if (edit) {(*iter)->toRemoveMode();} els...原创 2019-07-29 18:03:44 · 1823 阅读 · 0 评论 -
Socket粘包解决办法
变量说明:char msg : 用于存储从socket读取的数据head.length:这个变量也是右socket传过来,第一次先传长度(或包含长度的结构体)int recvNum:用于存储read socket数据的实际长度;(QTcpSocket mp_qTcpSocket; ->这个是指用于通讯的socket) char* msg = new char[head....原创 2019-06-20 21:08:24 · 587 阅读 · 0 评论 -
Qt error: reference to ‘connect’ is ambiguous
描述Qt同时继承QWidget与QWindow的时候,编译会报错。在Qt Widgets应用程序中,还有Qt Quick应用程序。二者不能同时直接并存,只能二选一。解决方法在Qt Widgets应用程序中嵌入QWindowQWidget *QWidget::createWindowContainer(QWindow *window, QWidget *parent=0, Qt::Wind...原创 2019-05-23 14:56:11 · 2615 阅读 · 0 评论 -
undefined reference to symbol 'dlclose@@GLIBC_2.2.5'(Qt 调用静态库从mac换到ubuntu 16.04.10报错)
说明在pro文件里面使用:LIBS +=-L$$PWD/Qssh/lib -lQSsh这样写的时候在mac上可以正常运行,但是在ubuntu上运行就会报错(libQSsh.a请自行换成linux版本的)Issies编译器输出/usr/bin/ld: /home/archermind/Desktop/baidu/cute_view/Qssh/lib/libQSsh.a(botan.o): ...原创 2019-05-20 16:58:31 · 3151 阅读 · 6 评论 -
C/C++中命令行参数argc , argv[]理解
*main(int argc,char argv[])1.参数说明(1).argc:输入参数的个数,以空格区分输入的为下一个参数(2).argv[]:为指针的指针(char **argv / char *argv[] / char[ ][ ],argv是一个指针数组)说明:main(int argc,char *argv[]),其中参数的写法可以自行修改(3).argv[0]:输入程序路...原创 2019-03-04 17:38:46 · 1215 阅读 · 0 评论 -
adb 连接多个设备
第一个adb设备:adb rootadb remountadb shell连接局域网内的第二个设备:adb connect 192.168.100.138:1234adb -s 192.168.100.138:1234 rootadb -s 192.168.100.138:1234 remountadb -s 192.168.100.138:1234 shell说明:使用adb ...原创 2019-02-20 22:31:53 · 3948 阅读 · 1 评论 -
Qt中一个socket对象只能在同一个线程使用
Qt在不同线程使用socket报错:QObject: Cannot create children for a parent that is in a different thread.(Parent is QTcpServer(0x1538a748), parent’s thread is QThread(0x15380578), current thread is QThread(0x15...原创 2019-03-02 16:30:59 · 2175 阅读 · 0 评论 -
Qt编译时出现问题:Warning:File ‘qml.qrc’ has modification time 21363s in the feture
Qt中某个文件在未来世界会被修改原因:qml.qrc文件创建时间与目标平台时间不一致,通常在Windows写的代码,拷贝到Linux后,再编译可能会遇到该问题解决办法:找到出问题的文件touch qml.qrc即可同步时间...原创 2019-02-20 22:48:22 · 709 阅读 · 0 评论