Qt平时遇到的疑难点
文章平均质量分 58
记录工作、学习中遇到的Qt难点、坑等
荆楚闲人
老骥伏枥,志在千里;烈士中年,壮心不已。
展开
-
将QComboBox下拉项中的文本居中、居右
QComboBox下拉项中的文本默认是居左的,如下:有时需要将下拉项中的文本居中、居右。如何实现?原创 2024-07-08 12:32:46 · 786 阅读 · 0 评论 -
QBrush的setColor函数不能改变画刷颜色的原因及解决方法
如果是QBrush brush;即不带任何参数默认构造出的画刷,其默认属性为Qt:noBrush。若设置为noBrush,之后修改这个brush的颜色,是无法被更改的,不能使用setColor语句修改其颜色。若希望实现画刷从无填充到有填充的转换,可以申明的时候把画刷的属性设置为透明色,然后再调用setColor语句修改其颜色,即像上面的最后一种方法那样。本意是想绘制一个红色矩形,但结果是矩形没有被红色填充,画刷根本就没起作用。原创 2024-06-17 14:27:36 · 323 阅读 · 0 评论 -
Qt实现程序单实例运行(只能运行1个进程)及QSharedMemory用法
在开发时,经常遇到这样的需求或场景:程序只能被启动一次,不能启动多次,启动多次会导致混乱,如:可执行程序用到文件指针、串口句柄等。试想如果存在多个同一个文件的句柄或同一个串口的句柄,就可能在同一时刻对同一文件或串口进行写操作,这样会导致文件内容杂乱、损坏;现实中,当一个串口被一个程序占用时,另外一个程序尝试打开这个串口会报错,因此需要控制程序运行时只能开启一个实例,如果用Qt实现程序单实例运行?原创 2024-06-06 19:19:06 · 589 阅读 · 0 评论 -
Qt封装ping命令并将ping结果显示到界面
【代码】Qt封装ping命令并将ping结果显示到界面。原创 2024-05-23 19:18:06 · 659 阅读 · 0 评论 -
Qtcreator断点进入Disassembler(反汇编程序)界面的问题解决
这个问题的原因是工程源码存放的目录含有中文,解决方法是将工程源码放到一个不含中文路径的目录,然后再断点调试,该问题不再出现。无论怎么调试,死活是上面的界面。原创 2024-05-23 18:51:20 · 906 阅读 · 0 评论 -
QSplineSeries和QLineSeries区别及QSplineSeries点超过坐标轴最大范围问题说明
该类是折线图表类,用来将相邻的两个数据点通过直线连接。原创 2024-05-21 19:15:56 · 676 阅读 · 0 评论 -
QTableView通过setColumnWidth改变列宽无效的问题解决
框架,如果对Qt的“模型/视图/委托”框架不懂,本博文很难读懂。读者本机Qt安装目录下的Examples\Qt-XX.XX.XX\widgets\itemviews目录下有很多model/view framework的例子,可以进行自学了解,其中XX.XX.XX为Qt的版本号,如:5.14.1。在开发中,需要设置QTableView、QTableWidget控件的列宽,但通过QTableView类的setColumnWidth函数设置列宽,发现不起作用。原创 2024-04-24 19:17:41 · 984 阅读 · 3 评论 -
删除QWidget中的所有布局和组件
原文链接:https://blog.csdn.net/ouyangxiaozi/article/details/134106609。4、QLayout::removeWidget(QWidget *widget) 可将某个组件从布局中移除。3、QLayout::itemAt(int index) 可根据索引获取相应的子项;2、QLayout::count() 可获取布局内的子项数量,包括子布局和子组件;1、调用QWidget::layout()可获取组件的布局;转载 2024-03-28 11:46:42 · 349 阅读 · 1 评论 -
QToolButton的工具提示出现自身border-image背景图的问题解决
用QToolButton贴个图片,用来做个指示灯,当鼠标移动到指示灯,弹出工具提示,以便提示该灯用来干嘛的。即样式表加入类名限定符QToolButton就可以了。QToolButton的第1种样式。QToolButton的第2种样式。原创 2024-03-26 19:13:47 · 226 阅读 · 0 评论 -
qt使用Windows经典风格,以使QTreeView或QTreeWidge有节点线或加号
其中a为上面定义的QApplication对象。原创 2024-03-18 13:50:29 · 563 阅读 · 0 评论 -
鼠标在QTreeView、QTableView、QTableWidget项上移动,背景色改变
本博文用到了Qt的model/view framework框架,如果对Qt的“模型/视图/代理”框架不懂,本博文很难读懂。如果不懂这方面的知识,请在Qt Assistant 中输入Model/View Programming 学习了解。读者本机Qt安装目录下的Examples\Qt-XX.XX.XX\widgets\itemviews目录下有很多model/view framework的例子,可以进行自学了解,其中XX.XX.XX为Qt的版本号,如:5.14.1。原创 2024-03-11 17:25:24 · 1374 阅读 · 0 评论 -
QTreeView、QTableView、QTableWidget等类不发送entered信号问题解决
因为都是从QAbstractItemView继承,故本博文所说的技术点也适用于这些类,本博文以QTableView类来讲解。原创 2024-03-11 16:38:02 · 713 阅读 · 0 评论 -
通过setPos设置QGraphicsItem在场景中的坐标位置不起作用的问题解决
这句代码,无论把坐标改为啥值,项在场景的位置都不变,即通过setPos函数更改项在场景的坐标位置无效果。解决方法是:在ui->graphicsView的类CGraphicsView中的构造函数中加入。类,类名为CGraphicsView的类对象。其中ui->graphicsView为派生自。原创 2024-02-20 14:57:11 · 692 阅读 · 0 评论 -
svg图片构造QGraphicsSvgItem对象耗时很长的问题解决
【代码】svg图片构造QGraphicsSvgItem对象效率很慢的解决方法。原创 2024-02-18 10:41:42 · 637 阅读 · 0 评论 -
从QObject类及非QObject类实现多继承,需把QObject放在继承链最前面
【代码】从QObject类及非QObject类实现多继承,需把QObject放在继承链最前面。原创 2024-01-19 16:34:25 · 564 阅读 · 0 评论 -
用C++QT实现一个modbus rtu通讯程序框架
具体的数据处理将根据需求进行扩展和实现,如写入数据和处理异常等。另外,需要根据实际情况设置正确的串口参数和设备地址,并确保与Modbus设备的正确连接。在编译和运行程序之前,还需要在项目的.pro文件中添加QT+=serialport以启用QtSerialPort模块。转载 2024-01-17 09:22:21 · 1001 阅读 · 4 评论 -
qtcreator一次性加载多个项目
有时一个软件系统由一个主程序,很多so或dll工程构成,每次打开qtcreator一个一个pro工程往qtcreator加,当项目很多时,很费时间、很麻烦,虽然qtcreator提供了sessions,可以一次打开上次加载的所有工程,但sessions不能在不同机器、不同人之间共享,只能保存个人的。用过Visual Studio的童鞋,就知道VS有解决方案,一个解决方案文件可以挂接很多VS的工程,每次打开VS的解决方案,就一次性将所有VS的工程都打开了。如何一次性在qtcreator就能打开所有工程?原创 2024-01-10 19:38:16 · 727 阅读 · 0 评论 -
connect信号槽的异步性导致多线程中的数据被更改及Qt::BlockingQueuedConnection作用
因为业务需求,需要利用子线程向主线程发送数据。像这种子线程和主线程进行数据交互时,一般都是通过Qt的信号槽机制来实现。原创 2023-12-18 11:05:24 · 1555 阅读 · 0 评论 -
QIntValidator或QDoubleValidator详解及范围无效问题解决
QLineEdit自带的setValidator包含 QIntValidator, QDoubleValidator, QRegularExpressionValidator。但在使用过程中,QIntValidator和QDoubleValidator在限制整数或者小数时无法正确应用。原创 2023-12-09 11:59:52 · 3638 阅读 · 0 评论 -
QT creator 或VS代码中有中文,提示常量中有换行符解决方案
提示常量中有换行符qt程序时,经常报错“常量中有换行符”导致无法编译成功。转载 2023-12-02 16:26:40 · 777 阅读 · 0 评论 -
在Qt设计师(Qt Designer )控件面板加入自定义控件
然后一直单击“下一步”直到完成。原创 2023-11-14 19:28:00 · 2225 阅读 · 1 评论 -
无标题栏的Qt子窗体在父窗体中停靠时,如何做到严丝合缝
造成第2节提到的问题的原因是:开发人员以为窗体去掉了标题栏,标题栏就不占据平面区域了。由于业务的要求,需要从父窗体弹出一个子窗体,该子窗体无标题栏,且该子窗体要停靠到父窗体右下角。这个看似很容易的问题,细研起来其实不容易!从上图可以看到,子窗体在停靠时,子窗体底边没有完全挨着父窗体的底边,还存在不小的间隙呢!如何让子窗体的底边完全挨着父窗体的底边,做到严丝合缝?下面代码,在CUavGuarMainWnd窗体创建了子窗体m_pFunOperPanel,可以看到:子窗体底边完全挨着父窗体的底边,严丝合缝了。原创 2023-11-14 16:17:47 · 501 阅读 · 6 评论 -
将VS工程转为Qt的pro工程及VS安装Qt插件后没有create basic .pro file菜单问题解决
很多小伙伴包括本人,如果是在Windows下开发Qt程序,偏好用Visual Studio外加装个Qt插件进行Qt开发,毕竟Visual Studio确实是功能强大的IDE,但有时需要将编写好的Qt工程移植到非Windows平台开发,这时就需要用到Qtcreator。现在的问题是:如何非人工地自动将Visual Studio的工程.vcxproj转为Qtcreator识别的pro工程呢?原创 2023-11-10 17:55:32 · 3658 阅读 · 1 评论 -
QWidget样式表或背景图片在Qt Designer 中能显示但运行时不显示的解决方法
Qt Designer 中能显示证明图片的路径是正确的,不显示肯定其它问题导致的。今天想在QWidget中贴一张png图片作为背景图,在Qt Designer 能显示,但运行时,死活不显示背景图片。其中Widget为QWidget的子类。原创 2023-11-10 08:57:13 · 4441 阅读 · 2 评论 -
VS的Qt插件、Qt、QtCreator安装包及源码官网下载地址
Index of /archive/qt原创 2023-11-03 19:09:38 · 386 阅读 · 0 评论 -
Qt实现三次样条Cardinal曲线
在设计矢量图案的时候,我们常常需要用到曲线来表达物体造型,单纯用鼠标轨迹绘制显然是不足的。于是我们希望能够实现这样的方法:通过设计师手工选择控制点,再通过插值得到过控制点(或在附近)的一条平滑曲线。在这样的需求下,样条曲线诞生了。简而言之,样条曲线是由多个多项式按比例系数组成的多项式函数,而比例系数是由控制点决定的。原创 2023-10-16 11:30:12 · 552 阅读 · 0 评论 -
Qt中以qRegister开头的几个函数的用法说明
Qt中以qRegister开头的几个函数的用法说明原创 2023-06-14 19:17:51 · 1362 阅读 · 0 评论 -
将Qtcreator编译器、调试器等配置为MSVC2017/2019
将Qtcreator编译器、调试器等配置为MSVC2017/2019原创 2023-06-13 19:24:13 · 5251 阅读 · 0 评论 -
Qt中以Q_DECLARE开头的几个宏的用法说明
Q_DECLARE开头的几个宏的用法说明原创 2023-05-30 18:22:58 · 2474 阅读 · 0 评论 -
QStringLiteral、QLatin1String作用及性能总结
QStringLiteral、QLatin1String用法总结原创 2023-04-09 09:59:29 · 3332 阅读 · 1 评论 -
将含有中文的QString转为std::string不乱码的方法
将含有中文的QString转为string不乱码的方法原创 2023-03-28 15:38:13 · 1269 阅读 · 0 评论 -
浅谈QWebChannel、QWebChannelAbstractTransport、QWebSocketServer、QWebSocket用法及之间关系
简谈QWebChannel、QWebChannelAbstractTransport、QWebSocketServer、QWebSocket用法及之间关系原创 2023-02-26 10:45:09 · 2411 阅读 · 0 评论 -
向QAbstractItemView子类如:QTreeView、QTableView等子项单元格插入窗体小部件的功能实现(第3种方法)
向QAbstractItemView子类如:QTreeView、QTableView等子项单元格插入窗体小部件的功能实现(第3种方法)原创 2023-01-26 19:32:12 · 1291 阅读 · 0 评论 -
向QAbstractItemView子类如:QTreeView、QTableView等子项单元格插入窗体小部件的功能实现(第2种方法)
向QAbstractItemView子类如:QTreeView、QTableView等子项单元格插入窗体小部件的功能实现(第2种方法)原创 2023-01-26 12:11:47 · 2489 阅读 · 0 评论 -
向QAbstractItemView子类如:QTreeView、QTableView等子项单元格插入窗体小部件的功能实现(第1种方法)
向QAbstractItemView子类如:QTreeView、QTableView等子项单元格插入窗体小部件的功能实现(第一种方法)原创 2023-01-26 11:37:44 · 1485 阅读 · 0 评论 -
Q_DISABLE_COPY、Q_DISABLE_MOVE、Q_DISABLE_COPY_MOVE用法详解及总结
Q_DISABLE_COPY、Q_DISABLE_MOVE、Q_DISABLE_COPY_MOVE用法详解及总结原创 2023-01-21 16:55:04 · 2995 阅读 · 1 评论 -
QSslSocket::supportsSsl()返回false问题解决
QSslSocket::supportsSsl()返回false问题解决原创 2023-01-21 11:10:36 · 2628 阅读 · 2 评论 -
QTreeView不能按子项内容长度自动出现水平滚动条及滚动不理想问题解决
QTreeView不能按显示的内容自动出现水平滚动条及水平滚动不理想问题的解决原创 2023-01-11 12:40:44 · 2365 阅读 · 4 评论 -
QAbstractItemView子类如:QTreeView、QTableView等子项单元格复选框勾选/取消勾选功能实现
实现QTreeView子项中的复选框勾选/取消勾选功能原创 2023-01-07 13:55:25 · 2332 阅读 · 0 评论 -
QThread、moveToThread用法详述
QThread、moveToThread用法详述原创 2022-12-31 10:11:29 · 3300 阅读 · 0 评论