自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(103)
  • 资源 (6)
  • 收藏
  • 关注

原创 VS2015中添加QT插件

1.打开VS2015,在菜单栏中选择“工具 - 扩展与更新”,然后选择左侧的联机,找到“QT Visual Studio Tools”下载安装,如下图所示2. 菜单栏 -> Qt Vs tools -> Qt options -> Add,添加如下路径环境变量配置: 这台电脑 -> 属性 -> 高级系统设置 -> 环境变量 ,添加Path变量:4.安装配置完成,可以创建一个实例进行测试。...

2020-05-25 09:13:35 3402

原创 Windows下libmodbus 支持upd库的编译与Qt里的调用

(2) 将modbus编译后生成的config.h 以及src目录下所有的.c .h 文件,全部复制到libmodbus目录中。链接:https://pan.baidu.com/s/1df3N5oDvQhApMNM2dNZcow。链接:https://pan.baidu.com/s/1m7sUtjGE-47a0wOJAYeETw。链接:https://pan.baidu.com/s/1nxcN9kIUVwSMTGGjjiMCUA。(8) 在main.cpp文件中编写如下代码,测试udp。

2023-09-26 11:17:43 352 1

原创 Timers cannot be started from another thread

Timers cannot be started from another thread

2022-09-08 08:32:50 786 2

转载 QT QString与Char* 之间的16进制互相转换

QT QString与Char* 之间的16进制互相转换方法

2022-08-29 16:45:35 1436

原创 Qt 网络发送带中文字符串

代码】Qt 网络发送带中文字符串。

2022-08-17 19:30:40 598

原创 QT PRO工程文件区分Debug和Release方法

pro文件内设置根据debug/release以及32/64位分别输出到不同目录:pro文件中 添加如下代码:

2022-07-14 13:15:18 1883

原创 QTimer定时器问题分析

QObject::killTimer: timers cannot be stopped from another thread原因:出现这个错误的原因在于在次线程中执行主线程对象的一些操作引起的使用定时器的注意事项不能跨线程启动定时器和停止定时器。不能跨线程启动一个定时器关联的对象,但在另一个线程释放此定时器关联的对象,即定时器相关的逻辑和对象只能用在一个线程中。例子分析://mainwindow.h#ifndef MAINWINDOW_H#define MAINWINDOW_H#

2022-04-28 17:47:22 3495

原创 Qt Creator 中使用VLD检测内存泄漏

下载VLD使用的VLD版本:vld-2.5.1-setup.exe下载地址:https://pan.baidu.com/s/1bhhrdfTB8hjqpR2xzPUyZQ提取码:a7g1安装VLD直接双击安装,选择安装位置,下一步,下一步即可。可选(应该不需要) 将D:\ProgramFiles\Qt\VLD\bin\Win32和D:\ProgramFiles\Qt\VLD\bin\Win64添加到系统环境变量path里。在QT中使用VLD本人使用的QT版本是QT5.14.2 MSVC20

2022-04-27 23:33:09 1553 2

转载 Qt Creator+MSVC开发环境搭建-MSVC调试器安装

MSVC调试器安装通过windows SDK工具安装调试器。工具下载地址:https://download.microsoft.com/download/4/2/2/42245968-6A79-4DA7-A5FB-08C0AD0AE661/windowssdk/winsdksetup.exe备用下载地址:链接:https://pan.baidu.com/s/1nscV6vBiU9tk8EciS-kxJg提取码:z2oz(1)下载完成后运行,默认,选择“Next”(2)默认,选择“Next”

2022-04-27 23:01:55 2754

原创 QT MSVC中文编译出错error: C2001: 常量中有换行符

Qt error: C2001: 常量中有换行符QT上用MSVC去编译部分含有中文的字符串时会出现编译错误error: C2001: 常量中有换行符解决方法:1、设置是工具->选项->文本编辑器->行为->UTF-8 BOM设置成“如果编码是UTF-8则添加”2、在头文件或.cpp文件,加上#pragma execution_character_set(“utf-8”)3、使用记事本打开文件,另存文件为带BOM头 utf-8 格式...

2022-04-22 11:41:08 1429

原创 VS2017 注释快捷键修改

1、工具 -> 选项2、环境 - 键盘3、显示命令包含 - 注释 - 编辑:注释选定内容焦点放到按快捷键下的方框内,同时按下Ctrl 和 / 键,点击分配按钮即可4、显示命令包含 - 注释 - 编辑:取消注释选定内容...

2022-04-19 15:37:24 817

原创 QT多线程同步之QWaitcondition

使用到多线程,无可避免的会遇到同步问题,qt提供几种同步线程的方法,在这里讲一下QWaitcondition的简单使用。一、QWaitcondition,是通过一个线程达到某种条件来唤起另一个线程来实现同步的mutex.lock();waitcondition.wait(&mutex);需要用到一个互斥量作为参数,而这个互斥量的状态必须是locked的。当调用这一句waitcondition.wait(&mutex) 在等待触发条件的时候,此时的mutex已经被设置为unloc

2022-03-24 09:12:11 1528

原创 C++中指针和引用的区别

1.指针和引用的定义和性质区别:(1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。如:int a=1;int *p=&a;int a=1;int &b=a;上面定义了一个整形变量和一个指针变量p,该指针变量指向a的存储单元,即p的值是a存储单元的地址。而下面2句定义了一个整形变量a和这个整形a的引用b,事实上a和b是同一个东西,在内存占有同一个存储单元。(2)引用不可以为空,

2022-03-23 21:50:05 914

原创 QCustomPlot常用操作

QCustomPlot获取当前窗口X坐标轴最大最小值double left = ui->widget_time->xAxis->range().upper;double right = ui->widget_time->xAxis->range().lower;

2022-03-17 10:06:58 297

原创 QT windows dpi变化导致的界面异常处理

对高分屏不同缩放比例的自适应处理方法//方法1:在main函数的最前面加上下面这句 5.6版本才开始有这个函数#if (QT_VERSION > QT_VERSION_CHECK(5,6,0)) QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling);#endif//方法2:在可执行文件同目录下新建文件 qt.conf 填入下面内容[Platforms]WindowsArguments = dpiawareness=0

2022-02-15 14:41:39 2723 1

原创 Qt-c++桌面编程报错:qt.qpa.plugin: Could not find the Qt platform plugin “windows“ in

问题:Qt-c++桌面编程报错:qt.qpa.plugin: Could not find the Qt platform plugin “windows” in “”原因:在window里的直接运行QtCreator IDE编译的软件时,相关依赖库找不到,就报错了解决:在cmd里用“windeployqt”命令运行: windeployqt xxx.exe ,会将相关依赖全部打包好,复制到当前运行文件夹里,...

2022-02-10 11:31:56 1274

原创 QCustomPlot绘图并设置游标,双游标

最终实现功能:1.鼠标单击生成游标(两个游标在一起),并随着鼠标移动而移动。2.鼠标双击固定第一个游标,第二个游标仍可随着鼠标移动而移动。3.鼠标再次双击固定第二个游标。4.起始,结束编辑框分别显示第一个游标和第二个游标的位置信息。头文件添加两个游标对象,画图函数和三个鼠标点击,双击,移动槽函数如下:class CursorDialog : public QDialog{ Q_OBJECTpublic: explicit CursorDialog(QWidget *par.

2022-01-07 15:16:06 5236 3

原创 静态html页面如何兼容pc和移动端

**静态html页面如何兼容pc和移动端**在“test.html”文件中的head之间,录入如下代码:![在这里插入图片描述](https://img-blog.csdnimg.cn/da43399ff43b49e4acf7286c804ec35a.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5ZyG5pyI5bGx5bqE,size_16,color_FFFFFF,t_70,g_se,

2021-12-18 16:21:59 4337

原创 Inno Setup软件 打包多个安装包程序

vc_redist.x64…exe 文件放在cod.exe 所在目录[Files]Source: “你要打包的软件目录\COD.exe”; DestDir: “{app}”; Flags: ignoreversionSource: “你要打包的软件目录\vc_redist.x64…exe”; DestDir: “{app}”; Flags: ignoreversion[Run]Filename:“"{app\vc_redist.x64.exe”;Flags: nowait skipifsilent

2021-12-01 16:59:51 2780

原创 Qt下QTableWidget 基本用法

QTableWidget的基本设置设置表头ui->tableWidget->setColumnCount(11);ui->tableWidget->setRowCount(10);ui->tableWidget->setHorizontalHeaderLabels(QStringList() << “Id” << “Name” << “Unit” << “Value” << “Min” <<

2021-12-01 14:49:26 2275

原创 QTextEdit:仅当滚动条位于底部时自动向下滚动

在添加文本之前查询滚动条 QScrollBar *scrollbar = ui->text_accept->verticalScrollBar(); bool scrollbarAtBottom = (scrollbar->value() >= (scrollbar->maximum() - 50)); int scrollbarPrevValue = scrollbar->value(); QTextCursor cursor = ui

2021-11-10 09:05:29 1187

原创 QTableWidget 常见用法总结(一)

QTableWidget设置单元格不可编辑for(int iRow = 0; iRow < rowCount; ++ iRow){for(int iColumn = 0; iColumn < columnCount; iColumn ++){ui->tableWidget->item(iRow, iColumn)->setFlags(ui->tableWidget->item(iRow, iColumn)->flags() & ~Qt::It

2021-10-16 11:04:10 782

转载 深入理解C++在.h头文件中定义函数导致的multiple definition

问题:某个头文件中声明并定义了一个函数,然后在多个源码文件中调用该函数,编译链接时出现了该函数multiple definition问题,在头文件中添加了 #ifndef 头也不行,经过尝试发现如果将该函数的声明和定义分开到.h和.cpp文件之后问题消失,为什么不能将函数直接定义在.h文件中呢?针对该问题,抽象出如下几个问题:1头文件中只可放置函数声明,不可放置函数定义吗?以下面的程序为例:// a.h#ifndef __a_h__#define __a_h__void funcA(void)

2021-10-12 09:15:23 2020 1

原创 char[4]转int或int转char

**4个char转int方法:**默认int占4个字节 char c1 = 'a';char c2 = 'b';char c3 = 'c';char c4 = 'd';int i = (c4) + (c3 << 8) + (c2 << 16) + (c3 << 24); 数组形式:char c[5] = "abcd";int i = 0;memcpy(&i, c, 4);int转char方法:1)用库函数itoaint a =

2021-10-08 17:41:54 1132

原创 Qt MSVC 2017 32bit 编译出现“error: C2131: 表达式的计算结果不是常数”错误

在MinGW 32bit下正常编译的qint64 fileLen = dstFile.size();char fileBuffer[fileLen];切换成MSVC 2017 32bit 编译后提示:报:error: C2131: 表达式的计算结果不是常数原因是在MSVC编译器中,定义数组时尺寸是不能用变量的。int b[] = { 1,2,3,4 }; 或者 int b[4] = { 1,2,3,4 };下面这样写就可以: qint64 fileLen = dstFile.size();

2021-09-24 15:08:14 2417

原创 MSVC编译器-C2001 常量中有换行符错误解决方法

解决方法:主要是由于MSVC2015编译器不支持其他类型的编码格式,需要把工程文件修改成UTF-8 带签名!!,UTF-8 无签名也是不行的。使用记事本 将文件另存为带 BOM头格式

2021-09-24 14:54:40 213

原创 C 语言基础

枚举变量的定义前面我们只是声明了枚举类型,接下来我们看看如何定义枚举变量。我们可以通过以下三种方式来定义枚举变量1、先定义枚举类型,再定义枚举变量enum DAY{ MON=1, TUE, WED, THU, FRI, SAT, SUN};enum DAY day;2、定义枚举类型的同时定义枚举变量enum DAY{ MON=1, TUE, WED, THU, FRI, SAT, SUN} day;3、省略枚举名称,直接定义枚举变量enum{

2021-09-22 11:07:10 46

原创 Qt CRC16-Modbus计算校验码-查表法

CRC校验代码const quint8 crcHi[]= { 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x00, 0xC1, 0x81, 0x40, 0x00, 0xC1, 0x81, 0x40, 0x01, 0xC0, 0x80, 0x41, 0x01, 0xC0, 0x80

2021-09-07 14:05:37 1276

原创 QString unsigned char * 相互转换

Qt unsigned char *与QString之间的相互转换//unsiged char *转QStringunsigned char *str = "fdd" ;char *str1 = (char *)str;QString str2 = QString(QLatin1String(str1));//QString 转化成char *QString str = "fdd";QByteArray ba = str.toLatin1();unsigned char * str1

2021-09-07 13:57:44 5096 1

原创 QT QString中去除空格的

去除字符串前面空格使用正则表达式:QSring.remove(QRegExp("^ +\s*"));实例:QString str = " aa ";//字符串aa前后各三个空格str.remove(QRegExp("^ +\\s*"));//运行结果: str="aa ";去除字符串后面空格使用正则表达式:QSring.remove(QRegExp("\s* +$"));实例:QString str = " aa ";//字符串aa前后各三个空格str..

2021-09-07 13:07:00 802

原创 QPushButton 设置背景图、QToolTip,出现文本与背景重叠问题

对按钮设置背景图:ui->btnAdd->setStyleSheet(“border-image:url(”:/image/btnAddSample.png);");同时设置tooltipui->btnAdd->setToolTip(QObject::tr(“新增样品”));鼠标经过按钮时候,会出现背景与文本重叠现象如果要改为 鼠标经过按钮时,只提示文本,做法如下:btnAdd->setIcon(QIcon(":/res/button.png"));btnAdd

2021-09-03 09:05:44 1062

转载 限制QLineEdit的数值输入范围

在使用QLineEdit输入数值时,经常遇到限制其范围的需要,比如角太阳高度角范围为[-90,90],经度值范围[-180,180],方位角范围[0,360]。Qt提供了QIntValidator和QDoubleValidator可以限定数值输入范围,如使用QIntValidator限制整数的数值范围:例1:lineEdit->setValidator(new QIntValidator(0, 1000, this));例2:lineEdit->setValidator(new QDou

2021-08-19 19:36:21 2228

原创 QT VS2017 源码调试出现Qt5cored.pdb 解决方法

=======异常代码 内存越界 示例代码int* p = NULL;*p = 13;QT5 VS2017 源码调试出现Qt5cored.pdb等 解决方法首先明确你的版本,然后修改下面中连接的版本号,5142代表5.14.2版本。https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/qt5_5142/下载.pdb文件下载地址:https://download.qt.io/online/qtsdkrepositor

2021-08-05 08:29:47 1950 4

原创 .pro文件转.vcproj文件(QtCreater项目转VS+Qt项目)

1、打开Qt命令行工具通常情况下,它在Windows开始菜单栏下,例如:2、进入.pro文件所在文件夹3、生成vcproj文件3.1、xx.pro存在TEMPLATE = subdirs时使用qmake -r -tp vc xx.pro3.2、其他情况qmake -tp vc xx.pro或qmake -t vcapp xx.pro4、效果演示操作前:操作后:...

2021-08-03 14:51:42 276

转载 Inno setup 打包教程

1、安装 inno setup 软件本人安装的是 6.0.52. 打开软件在弹出的 “欢迎” 对话框中点击 “取消”,便可看到 Inno Setup 编译器的主界面3.根据向导进行打包操作在主界面菜单中,点击 “文件” → “新建”在弹出的 “Inno Setup 脚本向导” 对话框中点击 “下一步”在弹出的 “应用程序信息” 对话框里填写要制作程序 “安装包” 信息,点击“下一步” 弹出 “应用程序文件夹”;“应用程序文件夹” 对话框如下图(一般默认即可)点击 “下一步” 弹

2021-07-22 14:09:28 7289 1

转载 Qt CuteLogger 日志输出文件

Qt 开发过程中,我们经常使用qDebug()来输出一条调试信息,但是,等软件正式发布之后,我们就需要软件运行日志功能,使用日志功能,能够快速的进行异常错误的跟踪和定位。也能查看软件运行的情况。Qt的日志工具有很多,log4cplus、log4cxx,Log4Qt等等,当然,也可以采用Qt的消息输出,重定向到日志文件,就可以实现一个简单的日志记录系统。具体可参考:使用Qt实现简单的日志记录功能(qInstallMessageHandler)下面,介绍一个 CuteLogger :基于Qt的应用程序的快速

2021-07-14 11:59:05 221

原创 Qt 点击按钮等待某个结果返回

eg:int try_count=0;while(try_count<10){//判断代码//休眠1.5秒QEventLoop loop;QTimer::singleSlot(1.5*1000,&loop,SLOT(quit()));loop.exit();try_count++;}

2021-07-14 09:23:30 855

原创 QT 防止按钮快速重复点击

void MainWindow::on_switch_clicked(){ui->switch->setEnabled(false);QTimer::singleShot(1000, this, = {ui->switch->setEnabled(true);});}

2021-07-09 10:23:48 1652 2

原创 CRC8 位校验

static const uint8_t crc8_table[256] ={0x00, 0x07, 0x0e, 0x09, 0x1c, 0x1b, 0x12, 0x15, 0x38, 0x3f, 0x36, 0x31,0x24, 0x23, 0x2a, 0x2d, 0x70, 0x77, 0x7e, 0x79, 0x6c, 0x6b, 0x62, 0x65,0x48, 0x4f, 0x46, 0x41, 0x54, 0x53, 0x5a, 0x5d, 0xe0, 0xe7, 0xee, 0xe9,

2021-07-08 09:57:12 1312 1

原创 移位操作 如何读取位数据的某几位

​单独第n位:(val&(0x1<<n))>>n取连续几位: (val&(0x07<<n))>>n​0-2: (val&0x07)>>0​1-3: (val&0x0e)>>1​2-4: (val&0x1c)>>2​3-5: (val&0x38)>>3​4-6: (val&0x70)>>4​5-7L (val&0xe0)&gt

2021-07-06 10:13:30 500

标准例程-库函数版本.zip

正点原子STM32F103最新源代码,欢迎下载使用!里面解析最强最全,库函数版

2021-04-13

软著使用说明书模板.docx

中国版权保护中心接收登记的文档包含两种:操作说明书或设计说明书,软件著作权使用说明书范本,软著申请模板 软著模板 源程序 说明书

2019-12-20

zlib 1.2.8 dll 完整release

zlib 1.2.8-dll.zip 官方编译的 releas 版本,亲测,可用

2017-03-27

R720 安装win 2003教程与所需资源

D​E​L​L​ ​R​7​2​0​安​装​ window server 2003 详细教程,以及包含了安装所需的资源,欢迎下载,可以实现 Dell PowerEdge R720 成功安装WindowsServer2003系统

2014-06-10

asp写的学校网站模板

有关学校 的 asp 网站模板 。。 对 初学者 很有帮助 。。。

2010-07-12

gobang 五子棋的小程序

有关五子棋的小程序 新手看看,应该会有收获的

2009-05-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除