
Qt
EloryDo
当你的才华还撑不起你的野心时,那你就应该静下心来学习。当你的经济还撑不起你的梦想时,那你就应该踏实的去工作!
展开
-
Qt线程的四种创建方式
Qt中主线程负责界面显示和窗口控件的数据更新,子线程负责逻辑业务处理和数据计算,子线程不能对窗口有任何操作,子线程可通过信号槽来将数据传递给主线程。1、子线程继承QThread子线程继承QThread,然后重写run()函数来执行子线程每一个子业务逻辑都可继承一个QThread来实现多线程 m_thread = new MyThread; connect(m_thread, &MyThread::signalsThreadCalNum, this, [=](in.原创 2021-07-02 17:21:21 · 14273 阅读 · 2 评论 -
Qt小技巧
记录几个Qt使用过程中的小技巧1、支持高清分辨率Qt从5.6.0开始,支持High-DPI在main.cpp中加上QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling);使其自适应屏幕,并且一定要加在QApplication的前面。#if (QT_VERSION >= QT_VERSION_CHECK(5, 6, 0)) QCoreApplication::setAttribute(Qt::AA_EnableH.原创 2021-06-28 13:31:08 · 160 阅读 · 0 评论 -
Qt布局
pushButton保持大小不变pushButton有文字的时候使用布局会使该控件变成文字大小无文字的时候就不会自动变大了可以将属性中的maximumSize设为一定的数值来保证有文字的时候其大小也不变使用layoutStretch实现UI的模块与模块之间的比例布局是下图中左右两个部件按照一定的比例分布,可在属性中设置layoutColumnStretch和layoutRowStretch中的数值,该数值表示比例...原创 2021-03-01 15:53:16 · 278 阅读 · 0 评论 -
Inno软件打包发布并后台安装相关驱动
本文使用Qt下的windeployqt来dll的打包,然后借助Inno Setup Compiler来制作安装包软件。步骤如下:1.使用windeployqt打包win+R输入cmd进入dos界面 输入xxx\windeployqt.exe (要打包的exe)然后执行即可2.使用Inno Setup Compiler来制作安装包软件可以在官网下载,步骤按下图...原创 2021-01-18 16:27:35 · 1719 阅读 · 1 评论 -
VS2017+QT5.14.2构建64位hidapi库
hidapi的源代码可以从http://www.signal11.us/oss/hidapi/下载。其编译生成的lib是Win32的,而我的实际工程中用到的是64位的,使用32位的库时会出现找不到某某函数的问题,故需要用他的.c和.h来重新生成64位的lib和dll。具体操作如下:自己创建一个工程,将hidapi.cpp和hidapi.h中的内容复制过去编译的时候有错误,修改相应的错误即可。将配置类型修改为“动态库(.dll)”hidapi依赖于setupapi库,故需要将其lib.原创 2020-09-15 12:06:42 · 1402 阅读 · 1 评论 -
Qt VS Tools加载.pro程序报错处理
VS2015下安装最新的qt插件之后,配置好路径之后,通过Qt VS Tools来加载pro文件,出现错误,经查询此为Qt插件太新有关系。通过工具——>扩展与更新,卸载当前的Qt插件 通过下面的网站下载旧版本的插件 http://download.qt.io/development_releases/vsaddin/点击下载的.vsix直接安装即可 ...原创 2020-06-17 10:18:26 · 1101 阅读 · 0 评论 -
Qt 语言家实现中英文切换
生成ts文件 在QT的项目文件(.pro)中加入:TRANSLATIONS = XXX.ts YYY.ts(假设是多行,则用 \ 切割)TRANSLATIONS = CN.ts\ EN.ts工具---外部---Qt语言家--更新翻译,可以获取CN.ts和EN.ts生产qm文件用Qt Lingust打开EN.ts,将中文翻译成中文...原创 2020-04-25 21:10:07 · 2555 阅读 · 2 评论 -
Qt 添加版本信息
Pro文件下添加RESOURCES += \ resource.qrcRC_FILE += Res/version.rcversion.rcIDI_ICON1 ICON DISCARDABLE "app.ico"#pragma code_page(65001)#if defined(UNDER_CE)#include <winbase.h>#els...原创 2020-04-07 22:34:37 · 2563 阅读 · 0 评论 -
对.int文件的读写操作
系统参数比较多的时候经常用到.ini 配置文件来配置参数。对.ini文件的读写操作记录如下:写入inibool WritePrivateProfileString( LPCTSTR lpAppName, // INI文件中的一个字段名[节名]可以有很多个节名 LPCTSTR lpKeyName, // lpAppName 下的一个键名,也就是里面具体的变量名 LPCTS...原创 2020-03-27 21:17:56 · 1292 阅读 · 0 评论 -
QT Http表单请求 post/get
用QT做一个客户端来调用客户的接口,利用到了https协议。先对post做下记录首先在pro文件中添加QT += network然后头文件中添加#include <QNetworkAccessManager> //加载网络请求头文件#include <QNetworkReply>#include <QNetworkRequest...原创 2020-01-10 16:27:45 · 1860 阅读 · 0 评论 -
QT 结构体转换为JSON
void Client::StructToJSon(const std::vector<sDefectItem>& vecDefect, QByteArray &jsonArray){ for(int i = 0; i < vecDefect.size(); i++) { QJsonObject rootObj, objStat...原创 2020-01-03 13:47:17 · 6027 阅读 · 2 评论 -
Qt创建多线程方法QtConcurrent::run()
用法:pro 添加 QT += concurrent头文件#include <QtConcurrent>QFuture包含的内容:QFuture future;future.waitForFinished();等待线程结束,实现阻塞。future. isFinished() 判断线程是否结束future.isRunning() 判断线程是否...原创 2019-12-07 11:51:37 · 1637 阅读 · 0 评论