自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

听风雨

静听风细细,慢观雨连连...

  • 博客(105)
  • 资源 (25)
  • 收藏
  • 关注

原创 c++实现单链表操作

c++实现链表操作

2022-11-04 17:58:42 344 1

原创 C语言实现单链表

C语言实现链表操作

2022-11-04 17:51:07 277

原创 Qt中QLayout的用法(QGridLayout, QFormLayout, QStackedLayout)

Qt 的各种QLayout布局用法

2022-09-01 17:58:53 548

原创 VS2019新建页面找不到Qt项目解决方法

VS2019新建页面找不到Qt项目

2022-08-31 15:03:36 1790

原创 VS2019 + Qt + VTK配置过程

VS + Qt + VTK

2022-08-21 10:30:17 557

原创 Qt QUrl通信时ProtocolUnknownError

Qt在做Ftp进行文件上传,下载时,会出现单独设置端口号不生效的情况,弹窗ProtocolUnknownError错误信息

2022-06-02 17:31:13 1797

原创 Qt如何获取本机的uuid

读取电脑的uuid

2022-05-09 18:59:26 1066

原创 Qt如何生成license文件

license文件生成过程:加密,解密,硬件绑定

2022-05-09 18:54:08 3203 1

原创 Qt 实现简单的离线程序自动更新

Qt软件离线更新,简单实现

2022-05-09 17:53:51 1474

原创 Qt 如何获取本机ip地址

QString myClient::getMyIpString(){ QString ip_address; QList<QHostAddress> ipAddressesList = QNetworkInterface::allAddresses(); // 获取所有ip for (int i = 0; i < ipAddressesList.size(); ++i) { QHostAddress ipAddr = ip

2022-04-19 13:54:06 4447 1

原创 c++如何获取当前.exe所在目录

获取当前exe所在目录

2022-02-07 16:20:06 1041

原创 C++ 17如何折叠表达式

折叠表达式用法

2022-01-24 16:08:01 390

原创 char*与QString 相互转换

char * 转 QString char str[50] = "this is string"; QString qs = QString(str);// 利用QString 的构造函数QString 转 char * QString qs = "this is string" ; char* ps = qs.toLatin1().data();// 先 qs.toLatin1()转为 QByteArry

2021-06-21 15:10:47 8691

原创 error C4335: 检测到 Mac 文件格式: 请将源文件转换为 DOS 格式或 UNIX 格式

解决方法1.双击错误,弹出错误所在文件:2.在桌面上新建cp.txt文件,并打开;3.把错误所在页面的所有代码Ctrl+C复制,并粘贴进cp.txt文档中,关闭txt并保存;4.重新打开cp.txt文档,并全部复制,并全部粘贴替换回原代码文档。5.再次运行,已经OK了。...

2021-06-11 09:15:28 5065 2

原创 Qt如何解决自定义的QWidget子类添加到父类后StyleSheet失效问题

一,问题描述自定义一个继承自QWidget的类。该类在UI中,或者在构造函数中设置了StyleSheet属性,当在父类中使用该类时,设置好的StyleSheet无法生效。定义:myChild::myChild(QWidget *parent) : QWidget(parent){ ui.setupUi(this); int width = 20; int heith = 20; setStyleSheet("background:rgb(0,0,255)"); m_Pressed =

2021-06-10 17:40:44 1230

原创 C++对数计算log

对数图像的特点C++如何使用对数函数添加库:#include <math.h>2.用法double v,rv;v = 178.9;assert(v>0);// 对数的输入为正rv = log(v);// 以e为底的对数 与 指数 exp(rv) : 以e为底的指数,相对应rv = log10(v);// 以10为底的对数double m=4;rv = log(v)/log(m);// 以m(m不为1)为底的对数...

2021-06-07 17:09:34 4927

原创 c++自己定义实现split功能

vector<string> mystring_split::myStringSplit(const string& s, const string& spliter){ vector<string> strs; string str = s; int pos; pos = str.find(spliter); if (pos == string::npos) { strs.push_back(s); } else { if (str.f

2021-05-31 12:33:12 140

原创 C++异常处理try throw catch的用法样例

1、C++标准异常类用法#include <iostream> #include <exception> using namespace std; int main () { try { int* myarray= new int[100000]; } catch (exception& e) { cout << "Standard except

2021-04-28 14:25:59 255

原创 C++ 寻找三个数的中间数及其位置

vector<int> data;data.push_back(1);data.push_back(3);data.push_back(5);// 先找最大,最小值,及其位置int mind=10000000,maxd = -10000000;int minidx=0,maxidx=0;for(int i=0;i<3;i++){ if(mind>data[i]) { mind = data[i]; minidx = i; } if( maxd<d

2021-04-28 11:03:37 3316

原创 opencv 如何判断一个点在某个轮廓里面

opencv 如何判断某一个点在某个轮廓里面1.新建一个相同大小的全0 Mat dst2.在该Mat 上绘出该轮廓,用drawContours,并填充为255;3.判断dst 上该点像素值是否是 255Mat dst = Mat::zeros(src.size(),CV_8U);drawContours(dst,contours,index,Scalar(255),-1);Point pt(x,y);if(dat.at<uchar>(y,x) == 255){ // 在该轮

2021-04-21 15:04:24 1883

转载 C++如何做字符串分割(5种方法)

1、用strtok函数进行字符串分割原型: char *strtok(char *str, const char *delim);功能:分解字符串为一组字符串。参数说明:str为要分解的字符串,delim为分隔符字符串。返回值:从str开头开始的一个个被分割的串。当没有被分割的串时则返回NULL。其它:strtok函数线程不安全,可以使用strtok_r替代。示例://借助strtok实现split#include <string.h>#include <stdio.h&

2021-04-06 17:54:50 125300 12

原创 opencv的CopyTo的用法

用法1:深拷贝A.CopyTo(B); // B 与 A 矩阵一模一样,改变任何一个,互不影响用法2:掩膜操作A.CopyTo(B,M);// 把与M中非0像素,相同位置的A中像素copy到B中同一位置// M 必须是CV_8U, 可以是单通道或多通道可以和浅拷贝相结合,实现非常骚的操作:ROI = B(Rect(0,0,B.Cols,B.Rows));// 浅拷贝Mask = Mat(ROI.rows,ROI.cols,ROI.depth(),Scalar(1));A.CopyTo(

2021-04-01 15:18:26 4567

原创 Opencv的深拷贝和浅拷贝记录

浅拷贝B = A;// 为浅拷贝,两者公用一块存储内存,改变任何一个,另一个都会改变Mat src,dst;src = imread("tt.jpg");dst = src;深拷贝存储内存相互独立,操作任何一个,互不影响函数:copyTo(), clone();A.CopyTo(B);B = A.Clone();...

2021-04-01 15:01:36 131

原创 opencv阈值分割threshold函数用法详解

函数名 thresholdC++ 版double threshold( InputArray src, OutputArray dst,double thresh, double maxval, int type );参数说明:函数返回值:做阈值分割的像素阈值;src: 输入图像矩阵,单通道的8位或32位图像矩阵,可以是float类型;dst:输出图像矩阵,与src类型一致,size大小一致;thresh:分割所需的图像阈值;maxval: 当type 选择ThresholdTypes::

2021-04-01 14:05:21 5899 3

原创 opencv如何把16位图像转换为8位图像

一、opencv自带的方法:Mat src16,tmp;Mat dst8 = Mat::zeros(src16.size(), CV_8U);normalize(src16, tmp, 0, 255, NORM_MINMAX);convertScaleAbs(tmp, dst8);二、自己代码实现 Mat src16; Mat dst8 = Mat::zeros(src16.size(), CV_8U); double mymin, mymax; cv::minMaxIdx(s

2021-03-25 17:21:58 8658

原创 C++基础——拷贝构造函数的四种调用方法

定义一个类#include <iostream>using namespace std;class MyClass{public: MyClass() { m_a = 0; m_b = 1; cout << "这是无参构造函数: m_a=" << m_a << ",m_b=" << m_b << endl<<endl; } MyClass(int a, int b) { m_a = a

2020-10-15 23:10:45 1276

转载 C++基础——C++ make_pair用法

#include &lt;iostream&gt;using namespace std; /** std::pair主要的作用是将两个数据组合成一个数据,两个数据可以是同一类型或者不同类型。例如std::pair&lt;int,float&gt; 或者 std::pair&lt;double,double&gt;等。pair实质上是一个结构体,其主要的两个成员变量是first和sec...

2020-10-13 10:44:31 56391 3

原创 C++基础——C++二级指针用法

C/C++语言中,二级指针,表示一级指针的地址,例如:int**p1;int* p2;p1 = &p2;具体用法示例:#include<iostream>using namespace std;struct Teacher{ char name[64]; int age;};int getTeacherAge(Teacher** p){ Tea...

2020-10-13 10:43:01 2840

原创 C++基础——C++指针的引用

指针的引用:int*p1;int fun(int*& tmp){ tmp// int*}代码示例:#include<iostream>using namespace std;struct Teacher{ char name[64]; int age;};int getTeacherAge(Teacher** p){ Teacher*...

2020-10-13 10:41:48 1704

原创 C++基础——inline内联函数用法

inline内联函数的作用inline 内联函数省去了普通函数调用时压栈,跳转和返回的开销。inline内联函数与宏定义的区别#define MYFUNC(a, b) ((a) < (b) ? (a) : (b))inline int myfunc(int a, int b){return a < b ? a : b;}内联函数由 编译器处理,直接将编译后的函数体插入调用的地方宏代码片段 由预处理器处理, 进行简单的文本替换,没有任何编译过程内联函数说明1.必须inline

2020-10-13 10:28:11 147

原创 C++基础——const用法

1 const基本用法void func(){ const int a=1; int const b=2; // 一样的 const int * c;// const 修饰的是指针c所指向的内存空间,不能修改 int* const d;// const 修饰的是指针变量本身不能被改变 const int* const e;// 两者均不能修改}2. const 变量在C语言和C++语言中的区别:void func(){ const int a=15; int* p=N

2020-10-12 23:05:22 161

原创 C++基础——C++对比C语言的增强

1.局部变量定义的增强void func(){ int a; printf("hello...\n"); int b; b=10;}在C编译器中,运行错误,a和b必须在最开始声明;在C++编译器中,运行正常,局部变量随时用,随时声明即可。2.register关键字的增强register关键字作用:register a; // 请求编译器让变量a直接放在寄存器里面,速度快c语言中, register修饰的变量 不能取地址,C++编译器有自己的优化方式,不

2020-10-12 22:18:17 172

原创 C++计算均值方差

C++计算均值方差void getMeanStd0(const vector& vec, int& mean, double& stdd){assert(!vec.empty());mean = 0;stdd = 0;for (int i = 0; i < vec.size(); ++i){ mean += vec[i];}mean /= vec.size();for (int i = 0; i < vec.size(); ++i){ std

2020-06-24 17:58:56 6267 4

原创 C/C++递归算法小测试

递归算法找最大值// myRecrusion.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>int findMax(int a[], int n);int findMin(int a[], int n);void findMinMax(const int a[], const int n,int& min,int& max);int _tmain(int argc, _TCHAR* ar

2020-06-02 15:53:59 213

原创 Qt如何实现按住Ctrl键,点击QSpinBox成倍加减

需求有时候,一个QSpinBox,点击上下加减,进行输入值调节时候,一直一个小步长,调节太慢,一直一个大步长,调节又太粗糙。因此,就需要做一个快捷方式:比如,按住ctrl键,调节步长变大,松开ctrl键,调节步长恢复原小步长。其实,最好的是重写QSpinBox类。下面讲一下,简单实现。实现结果:实现原理:1.捕捉键盘事件;2.在ctrl按键按下时,改变QSpinBox的步长。xxx.h文件:#ifndef TESTSPINBOX_H#define TESTSPINBOX_H#inc

2020-06-01 17:22:54 1183

原创 C/C++函数重载和函数指针的用法

函数重载和函数指针函数重载:只针对同名函数的形参类型,个数,顺序,不看返回值。正确重载:void func(int a);void func(int a,int b);void func(float a);void func(float a,float b);错误重载(二义性):void func(int a,int b);void func(int a,int b, int ...

2020-03-27 17:19:42 1068 1

原创 Qt+ VS实现多输入框键盘回车响应事件

在通信界面经常出现,一个ui里面,有很多输入框,按下回车后,如何确定是刚刚输入的那个输入框的值发生了改变呢。首先获取当前光标位置QWidget* fw = QApplication::focusWidget();重写键盘事件xxx.h中:protected: virtual void keyPressEvent(QKeyEvent* evt);xxx.cpp中:构造函数添加:...

2020-03-24 15:30:55 1169

原创 VS + Qt环境下解决中文乱码问题

中文乱码问题VS + Qt环境下,正常输出中文,会出现乱码问题,这是VS与操作系统的编码字符集的问题。例如:setWindowTitle("中文窗口");出现:解决方法:a,如果,在需要输出的中文的地方比较少,可以使用:setWindowTitle(QString::fromLocal8Bit("中文窗口"));//或者setWindowTitle(QStringLitera...

2020-03-18 15:35:39 10239 5

原创 VS+Qt 如何实现自定义菜单栏

功能界面自定义菜单栏实现mymenu.h定义槽函数:private slots:void on_actionOpen_triggered();void on_actionSave_triggered();void on_actionExit_triggered();void on_actionMain_triggered();void on_actionWarmUp_trigg...

2020-03-06 16:52:40 1903

原创 Qt给定时器开线程及多线程下不同connect连接类型的分析

功能显示界面Qt给定时器开线程定义定时器和子线程timerthread.h中:class TimerThread : public QMainWindow{ Q_OBJECTpublic: TimerThread(QWidget *parent = 0); ~TimerThread();private slots: void on_btnStart_clicked();...

2020-03-02 15:55:15 919 1

qt-vsaddin-msvc2019

兼容qt5.14.2与 vs2019

2023-07-19

qt-vsaddin-msvc2017

兼容Qt5.14.2与VS2017

2023-07-19

如何制作软件安装包的软件

利用inno软件,把你的代码编译后的.exe软件,轻松制作为安装包,还可以设定安装密码,亲测可用

2021-07-14

VGStudio Max 3.4版软件功能模块说明(中文版)

文档主要是 VGStudio Max 3.4版软件各个功能模块的说明文档

2021-07-12

VGStudio max 版本软件的功能模块介绍与购买说明(中文版)

该文档主要是vgstudio max 版本软件的各个功能模块介绍与说明,方便用户可以针对性的购买某些功能模块

2021-07-12

c++与Qt实现把定时器放进子线程中运行

Qt中把QTimer放进子线程中执行,同时,把主ui线程中的定时器槽函数,同步移动到子线程执行。本样例,实现了,QTimer在子线程运行,QTimer的槽函数与自己均在同一个子线程中运行。

2020-03-02

自己做的万能视频播放器,无广告,无弹窗

本播放器是基于QMediaPlayer视频类做的,直接双击即可使用,免安装。 使用该播放器前,首先安装Lav视频解码器,可以使用K-Lite视频解码器(下载地址:https://download.csdn.net/download/birenxiaofeigg/12128448)

2020-02-03

QMediaPlayer实现视频播放器功能

主要利用QMediaPlayer,实现各种格式视频的播放,包括音频,视频均正常播放,实现了功能:播放,暂停,多倍快进,上一个视频,下一个视频切换,拖拉进度条播放,声音进度条调节,播放记录,通过播放记录进行播放,等所有功能。如有问题,请私信留言,100%给你解决掉。

2020-02-02

视频解码器LAVFilters

LAVFilters视频解码器,可以支持DirectShowPlayerService,在Qt环境下,进行视频播放器开发,可解决播放器没有图像,视频播放花屏,卡顿问题

2020-02-01

K-Lite视频解码器

K-Lite视频解码器,适应于使用Qt 的QMediaPlayer进行播放器开发,解决视频花屏,播放卡顿问题

2020-02-01

Qt实现双击可编辑的QLabel,按回车或Esc确认

在一个QLabel标签上,双击,对文本进行编辑,按下回车或者Esc,退出编辑状态,或者任意点击其他地方,退出Focus,退出编辑状态

2020-01-16

Qt实现在QLabel上播放视频文件,可以拖动进度条,快进倒退

Qt实现在QLabel上播放视频文件,可以拖动进度条,快进倒退,快进可以两倍快进,同时提供了多倍快进的方法。视频播放过程中,实时显示进度

2020-01-09

Qt+VS2013利用Opencv开发一个视频播放器

开发环境是Qt + VS2013 + opencv3.1.0,配置好环境,可以直接运行,可以播放*.avi *.mp4 *.wmv,*.mkv *.rmvb *.mpeg等格式的视频文件,但是没有声音。

2020-01-08

Qt利用avilib实现录屏功能(没有声音)

Qt录屏功能源代码,双击.pro,配置好环境,可以直接运行,如有问题,可以直接跟我留言。。。

2020-01-07

Qt + VS环境下,利用avilib实现简单的录屏软件

压缩包里自带avilib.h和avilib.cpp,解压后,配置下Qt环境,可以直接运行,经测试,良心好用

2020-01-07

mongoDB数据库的c++接口与库文件VS2015

里面包含了c+调用mongodb接口的所用到的lib,dll,include库等以及对应的boost文件,可以在vs2015上使用,亲测可用

2019-12-06

Qt两种方法实现多线程并安全结束线程及QMutex加锁Qt单例化实现

Qt两种方法实现多线程的开启,及子线程的安全结束线程,及QMutex加锁,Qt单例化实现

2019-11-07

libcurl库测试样例

应用vs2013开发的libcurl库的一个测试样例,debug, x64环境

2019-07-26

libcurl库编译后结果,可直接使用

使用vs2013对第三方libcurl库进行动态编译后,得到的可用版libcurl,有debug和release两版

2019-07-26

C++网络开发,最佳选择libcurl库最新版(20190726)

截至2019.7.26日,最新版libcurl第三方库,做C++网络开发,最佳选择

2019-07-26

C++与Qt实现QChart设置时间轴随数据实时更新

Qt5.8与VS2013实现QChart数据随时间刷新,并实时刷新X轴时间范围

2019-07-12

c++与Qt使用数据库MySQL进行数据的增删改查功能实现

在visual Studio2013环境下,使用Qt,使用数据库MySQL进行数据的增删改查功能实现

2019-06-17

c++与Qt实现QChart使用样例,包含双纵坐标轴参数、样式设置,绘图曲线背景自定义,曲线实时刷新

QChart使用样例,包含双纵坐标轴参数、样式设置,绘图曲线背景自定义,曲线实时刷新

2019-06-17

完全免费的录屏软件(免安装)

一款完全免费的录屏软件,免安装版,解压后直接双击,即可运行,不过只能保存为.mkv格式的视频文件。

2019-03-01

老外最新版的avilib的h文件和cpp文件

老外最新版的avilib.h文件和avilib.cpp文件,解压后直接放在自己项目里,直接调用就行。里面还有如何调用.cpp文件内函数的说明文档,可供参考。

2019-03-01

c++与Qt串口通讯示例

c++与Qt串口通讯solution示例,解压后可以直接运行(vs2013+Qt5.5.1)

2019-03-01

老外最初版的avilib的h文件和cpp文件

老外最初版的avilib的h文件和cpp文件,可实现对AVI视频文件的读取分析,也可以实现对AVI视频文件的创建生成。

2019-03-01

空空如也

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

TA关注的人

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