Qt
文章平均质量分 53
灾祸之鸟
这个作者很懒,什么都没留下…
展开
-
QSplineSeries绘制的曲线波动问题
QSplineSeries绘制的曲线波动问题原创 2022-08-02 10:24:21 · 761 阅读 · 1 评论 -
Qt项目在windows任务栏窗口合并
在项目中,Qt的主窗口(a.exe)通过QProcess开启了一个子进程(也是自己写的 b.exe),这样就会导致在下方的任务栏中,任务窗口是分开的,但是因为b.exe是a.exe的工具窗口,所以还是希望能合并到一起,在网上找了好久,找到个windows的API:SetCurrentProcessExplicitAppUserModelID,不过在使用的时候无论包了什么头文件和库,这个API都调用不了,于是只能想其他办法。我所用的方法是将b.exe的main函数的内容转移到a.exe的main函数中,在a原创 2022-01-18 18:34:33 · 1188 阅读 · 0 评论 -
qt程序捕捉linux信号
项目的qt程序想要再linux下ctrl+C时正常退出,需要对相应的SIGINT信号进行捕捉,然后去做后续操作,网上看了一圈弄到最后都会报未定义的引用,然后在qt的issue中看到了解决办法:MyDaemon.h:#include "myProject.h"class MyDaemon : public QObject{ Q_OBJECTpublic: MyDaemon(QObject *parent = nullptr); // Unix signal handler原创 2022-01-05 18:32:02 · 1643 阅读 · 0 评论 -
Qt信号与槽会被阻塞的问题
最新在开发的时候发现这么一个情况把自定义信号connect到一个槽函数,而在槽函数内部执行的时候用了一个eventloop阻塞当前代码执行,这样的结果就是在emit了自定义的信号后就被槽函数的调用阻塞住了,不会再往下执行,如下:signals: void signal_one();connect(this, SIGNAL(signal_one()), this, SLOT(funcB()));void funcA() { emit signal_one(); std::cout <&l原创 2021-12-02 18:46:34 · 5212 阅读 · 0 评论 -
解决Qt程序打包到其他电脑上的TLS Initialize Failed错误
在开发Qt时经常会用到https协议,而使用https时都需要使用openssl,然后就经常会有这种情况:最可气的是在自己电脑上没有这个问题,但是打包到其他电脑上时就会概率出现这个问题。在网上搜了一堆结果都是说的Qt5.12以下版本缺少libeay32.dll和ssleay32.dll或者Qt5.12以上版本缺少libcrypto-1_1-x64.dll和libssl-1_1-x64.dll两个库,但是无一例外的在打包放到没有环境的裸机上时仍然会报这个错。(本人用的Qt是5.13版本)期间甚至以为q原创 2021-05-19 14:02:19 · 494 阅读 · 1 评论 -
Qt调用另一个类的ui界面以及解决the class contaning “Ui::Widget“ could not be found的方法
调用另一个类的ui:类A调用类B的ui(B必须为设计师界面类),需构造一个B类对象,A获取该对象的指针后,在A.cpp中#include "ui_B.h"(该头文件是编译时自动生成的)后即可通过B的指针调用B的ui:B->ui->pushButton作者在调用时,有出现过B的ui无法转到槽的情况,并且qt弹窗:the class contaning “Ui::Widget” could not be found inxxx.cppxxx.cppxxx.cppPlease verif原创 2020-10-20 15:19:05 · 3655 阅读 · 7 评论 -
Qt读取中文文件的乱码问题(不使用textcode)
本人是使用的cmakelist来编译的qt工程,在cmakelist中添加上:string(APPEND CMAKE_CXX_FLAGS " -fexec-charset=GBK")如果是.pro文件编译的工程也只需添加类似于:CMAKE_CXX_FLAGS += -fexec-charset=GBK之类的代码吧以上操作修改了整个工程的编码格式代码部分:QFile file("text.txt")file.open(QIODevice::ReadOnly | QIODevice::Text);原创 2020-08-12 11:55:36 · 320 阅读 · 0 评论 -
有关qt的大小写敏感操作
遇到一种就在此文章上继续添加:1. QComboBox#include <QComboBox>#include <QCompleter>QCompleter sensitive;sensitive.setCaseSensitivity(Qt::CaseSensitive);//Qt::CaseSensitive 大小写敏感 //Qt::CaseInsensitive 大小写不敏感(QComboBox默认)QComboBox::setCompleter(&s原创 2020-07-23 17:07:53 · 2804 阅读 · 0 评论 -
Qt通过http连接企业微信群机器人发送消息
用到的头文件:#include <QNetworkRequest>#include <QNetworkReply>#include <QNetworkAccessManager>#include <QJsonObject>代码实现:void httpConnectWeChatRobot(QString url, QString msg) //url为群机器人的webhook,msg为要发的信息{ if(msg.isEmpty())原创 2020-06-30 09:40:58 · 781 阅读 · 0 评论 -
Qt程序中获取Qt的版本号信息
Qt程序中获取Qt的版本号信息Qt中有相应的宏和全局函数可以直接获取版本号QT_VERSIONQT_VERSION_STRconst char *qVersion()至于其他的信息应该也可以在QtGlobal中找到...原创 2020-04-30 11:49:29 · 5236 阅读 · 0 评论