Qt基础
叫我东方小巴黎
这个作者很懒,什么都没留下…
展开
-
【Qt】QTcpServer/QTcpSocket通信
【代码】【Qt】QTcpServer/QTcpSocket通信。原创 2024-07-18 16:56:59 · 372 阅读 · 0 评论 -
【Qt】使用libmodbus实现ModBusTcp
Qt自带QModbusTcpClient,换个电脑就不好使了,换libmodbus。原创 2023-06-15 22:09:53 · 2797 阅读 · 0 评论 -
【Qt基础】QT子线程循环任务,子线程信号槽无法被触发
从上述代码中可以看出,processEvents函数主要是将正在处理的事情的控制权还给Qt,通俗点来说就是,正在干的事情太耗时间了。了processEvents函数后,会把这个耗时间的东西踢出来,自己一个去慢慢耗。我继续去监控其他的事件。原创 2023-03-14 22:31:12 · 555 阅读 · 0 评论 -
【Qt】发送自定义signal,直接调用也可以,不使用emit
上下两种写法,效果相同。原创 2022-10-10 15:54:59 · 677 阅读 · 0 评论 -
【Qt】QListView
一旦某个对象对销毁,它的子对象会连带被销毁。基于这个理论,以及model会获得item所有权的说法,可以推断出,item应该会随着model的销毁而销毁,而model又会随它的父级销毁。removeRow()也会导致内存的释放。原创 2022-10-08 17:20:33 · 434 阅读 · 0 评论 -
【Qt】Use multi-arg instead
【代码】【Qt】Use multi-arg instead。原创 2022-09-18 14:22:23 · 2136 阅读 · 0 评论 -
【Qt】QButtonGroup中Button互斥
【代码】【Qt】QButtonGroup中Button互斥。原创 2022-08-20 01:32:21 · 732 阅读 · 0 评论 -
【Qt】快捷键
Ctrl + shift + up/down 将当前行上下移动原创 2022-06-24 10:27:55 · 92 阅读 · 0 评论 -
【Qt】QT添加外部文件
1,QT CREATOR添加外部源文件和头文件。右击项目,点击“Add Existing Directory…”,及添加文件夹,选中文件夹,则自动添加到.pro文件。https://blog.csdn.net/hnsdgxylh/article/details/121432042原创 2022-05-19 09:06:50 · 1851 阅读 · 0 评论 -
【Qt】QString 与 const char* 类型的转换
Qt QString 与 const char* 类型的转换1 QString DATA;2 std::string str = DATA.toStdString();3 const char* ch = str.c_str();原创 2022-05-06 22:57:40 · 1018 阅读 · 0 评论 -
【Qt】警告Missing reference in range-for with non trivial type
Missing reference in range-for with non trivial type (QString) 警告原始代码如下,QStringList fileList = QFileDialog::getOpenFileNames(this, title, curPath, filter);for (QString i : fileList){ ui->plainTextEdit->appendPlainText(i);}根据IDE语法建议修改成如下代码原创 2022-05-05 20:28:08 · 830 阅读 · 0 评论 -
【Qt】智能指针
https://zhuanlan.zhihu.com/p/364014571?ivk_sa=1024320u代码中出现一个bug,最终发现是由于在某个特殊情况下出现了使用垂悬指针,造成了程序崩溃,进而学习了解了Qt的智能指针机制。一、悬垂指针的问题如图,有两个指针a和b指向同一片内存,如果删除其中一个指针a,再去使用指针b的话,程序会崩溃。因为指针b此时已经是一个垂悬指针(Dangling pointer)了,它指向的内存已经被释放不再有效。垂悬指针使用指针b之前先判断b是否为空,这个做法在这里是原创 2022-05-03 09:23:09 · 2038 阅读 · 0 评论 -
【Qt】多线程
方法1:QThread方法2:movetoThread对象不能有父类进入多线程的是对象的槽函数https://subingwen.cn/qt/thread/#3-1-%E6%93%8D%E4%BD%9C%E6%AD%A5%E9%AA%A4原创 2022-04-10 23:34:20 · 628 阅读 · 0 评论 -
【Qt】Connect/Disconnect
1、关注connect/disconnect的返回值2、在创建connect时,一定注意位置,确保只创建一次,否则变量没释放,又connect了,emit之后,会多次进入槽函数。3、原则上不需要调用disconnect,因为对象被释放时,会自动释放该对象的connect。https://blog.csdn.net/yuyefuxiao521/article/details/113185099...原创 2022-04-01 16:15:28 · 2261 阅读 · 0 评论 -
【Qt】disconnect一个lambda匿名函数
方法1:QObject::disconnect(senderInstance, &Sender::mySignal, this, nullptr);方法2:connect的对象销毁了则自动disconnect。https://blog.csdn.net/kenfan1647/article/details/105599795原创 2022-03-21 16:53:33 · 622 阅读 · 0 评论 -
【Qt】Qt中使用switch case语句抓取QString
Qt中使用switch case语句抓取QString1.使用了QStringList进行操作2.使用了Qt的枚举类型进行操作在Qt中使用switch case语句抓取QString类型在编写Qt程序时,发现switch case 无法直接抓取QString类型进行比较。在网络上总结了两种方法:参考:https://blog.csdn.net/qq_39404112/article/details/1053845171.使用了QStringList进行操作使用QStringList插入List原创 2022-03-07 16:23:48 · 4307 阅读 · 0 评论 -
【Qt】qobject_cast用法
qobject_cast()动态转换QObject类的类型。qobject_cast()函数和标准C++的dynamic_cast()功能类似,只是其不需要RTTI的支持,而且可以跨越动态连接库的边界。它尝试将它的参数cast成尖括号内的对象类型,如果对象是正确的类型(运行时决定)则返回非零,否则返回0,说明对象类型不兼容。T qobject_cast ( QObject * object )本方法返回object向下的转型T,如果转型不成功则返回0,如果传入的object本身就是0则返回0。在使用时原创 2022-03-07 16:11:07 · 1367 阅读 · 0 评论 -
【Qt】样式表的使用——设置样式的方法
Qt 之 样式表的使用——设置样式的方法一、简述二、开始总结1、先谈谈我们设置样式有几种方法(a)、最简单,也是最直接——在Qt Designer 中添加样式(b)、在代码中添加样式(c)、将样式写在文件中,通过读取文件的方式设置样式2、再谈谈这几种设置样式方法的优缺点(a)、最简单,也是最直接——在Qt Designer 中添加样式(b)、在代码中添加样式(c)、将样式写在文件中,通过读取文件的方式设置样式个人建议常见样式一、简述我们通常在使用Qt开发的过程中都会使用样式表来美化我们的界面,关于如何使原创 2022-03-07 10:10:28 · 4923 阅读 · 0 评论 -
【Qt】左边搜索栏消失
Alt + 0将显示项目树。使用ctrl + k打开搜索窗口。原创 2022-03-03 16:26:03 · 679 阅读 · 0 评论 -
【Qt】串口通讯
Qt串口通信基础及名词说明1.串口通信(1)波特率:(2)数据位:(3)停止位:(4)奇偶校验位:2.Qt串口通信模块QtSerialPort简介(1)QSerialPort类成员函数(2)简单实例1.串口通信串口通信(Serial Communications)的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义并行通行状态时,规定设备线总长不得超过20米原创 2022-03-02 14:28:55 · 14068 阅读 · 1 评论 -
【Qt】国际化
需要翻译的字符串用tr()包括,QtDesign设计的ui勾选可翻译pro文件中加入ts.proTRANSLATIONS = resources/translation/Translation_EN.ts \ resources/translation/Translation_CN.ts点击更新翻译QtLinguist打开生成的ts文件,输入对应翻译,后点击发布生成qm文件qm文件放在项目的build目录下comboBox实时加载cppvoid ..原创 2022-01-18 11:10:32 · 357 阅读 · 0 评论 -
Qt:多窗口传递参数
这里写目录标题方法1:信号和槽方法2:全局变量方法1:信号和槽B窗口.h定义signals,cpp中适当位置emit该signal窗口A接受窗口B信号,在A中建立信号和槽。类B的signal触发A的槽mainwindow.hclass MainWindow : public QMainWindow{ Q_OBJECTpublic: MainWindow(QWidget *parent = nullptr); ~MainWindow();private slot原创 2021-12-01 20:34:46 · 1525 阅读 · 0 评论 -
Qt:exe打包
exe打包打包教程工具出现错误打包教程https://www.bilibili.com/video/BV1J5411T7or?spm_id_from=333.1007.top_right_bar_window_history.content.click编译Release版本,Release版本较小,原因没有一些调试字符?拷贝Release中的exe,到一文件夹中打开对应版本的:在该控制台中输入以下指令,将在exe目录下生成全部需要文件,理论上可以手动删除不需要的依赖文件,但不建议这么做Q原创 2021-11-29 16:52:21 · 342 阅读 · 0 评论 -
Qt:自定义槽
.h#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include <QtDebug>#include <windows.h>namespace Ui {class MainWindow;}class MainWindow : public QMainWindow{ Q_OBJECTpublic: explicit MainWindow(QWidge原创 2021-11-21 21:14:21 · 624 阅读 · 0 评论