自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

周杰伦

载着你仿佛载着阳光 不管到哪里都是晴天 《星晴》

  • 博客(317)
  • 资源 (9)
  • 收藏
  • 关注

原创 Windows7下双网卡绑定(双网络冗余)

16.然后使用两根网线分别插在 A网口 和 B网口,使用网络调试助手测试,拔掉其中一根网看数据收发是否正常。1.首先需要电脑主机里至少有两张网卡。

2023-12-17 00:06:37 1210 2

原创 Qt中moveToThread注意的地方

当使用moveToThread方法将对象移动到其他线程后,对象的构造函数仍然是在主线程执行的。moveToThread方法仅仅是让对象的事件循环、信号槽连接等引用主线程的资源移动到目标线程,但对象本身是不会移动的。当使用moveToThread方法将对象移动到其他线程后,对象的构造函数仍然是在主线程执行的。moveToThread方法仅仅是让对象的事件循环、信号槽连接等引用主线程的资源移动到目标线程,但对象本身是不会移动的。这里Work对象是在主线程使用new关键字构造的,所以它的构造函数也在主线程执行。

2023-12-15 17:49:35 604

原创 Windows下使用CMD修改本地IP

网络适配器名称 改成2.4IP 子网掩码 网关。netsh interface ip set address "以太网" static 192.168.2.4 255.255.255.0 192.168.2.1。

2023-12-08 21:01:01 1061

原创 [debug/main.o] Error 1 QtCreator编译报错

在我是用Qt5.6.0MinGW32位版本编译程序,在Pro文件中添加了预编译头文件后编译报错:mingw32-make[1]: *** [debug/main.o] Error 1;2.不删Pro文件里的预编译头文件,当我使用Qt5.7.1MSVC版本进行编译时也不报错。4.最后在预编译头文件里挨个删除代码发现是:不能添加某些头文件,删了下面代码就不报错了。3.我再使用Qt5.13.1MinGW32位版本进行编译也不报错。1.删除Pro文件里的预编译头文件后报错消失。

2023-10-27 18:43:15 543

原创 C++局部变量 成员变量 全局变量(及文件内外全局变量)

在.h文件里声明外部全局变量如果没有加 extern 修饰符,使用该全局变量处会提示语法错误——未声明的表示符,需要在使用全局变量的文件种添加头文件 include “XXX.h;私有成员变量只能被该类的成员函数访问和修改,不能被该类的对象或该类的派生类直接访问。:类的成员变量是指在类的定义中定义的变量,它们是该类的属性,描述了该类的状态。成员变量可以被该类的成员函数访问和修改,也可以通过类的对象访问和修改。:静态全局变量也是定义在全局作用域下的变量,但与普通全局变量不同,它只能在声明它所在的文件中可见。

2023-10-09 20:24:00 675

原创 C盘或用户名文件夹变成桌面后改不回去问题解决

桌面移动到了用户文件夹下,导致用户文件夹变成了桌面,用户文件夹里的文件都跑到桌面显示了。

2023-10-08 17:53:18 2116

原创 Qt自定义父窗口,子窗口继承父窗口属性

Qt自定义父窗口,子窗口继承父窗口属性

2023-06-15 16:56:34 1106

原创 C++中用迭代器删除std的vector重复元素

随后,我们使用一个while循环遍历vector中的每一个元素,并在内部使用std::find函数寻找其后面是否还有和它相同的元素,如果找到则使用std::erase函数将其删掉,否则将迭代器it自增即可。unique函数可以将vector中相邻的重复元素去重,返回去重后的尾部迭代器,而erase函数可以根据两个迭代器之间的范围删除vector中的指定元素。需要注意的是,在循环中调用erase函数会使迭代器失效,因此需要将find函数的返回值重新赋值给迭代器iter,以便在下一次循环时重新开始搜索。

2023-06-10 12:44:26 1547

原创 C++定义一个全局变量,并让它在不同的源文件中共享

在这个示例中,我们将全局变量 myGlobalVar 声明在头文件 myglobalvar.h 中,并在源文件 myglobalvar.cpp 中定义和初始化它。然后,在 somefile.cpp 文件中,我们先包含myglobalvar.h 头文件,并在 myFunction() 函数中使用该变量。由于我们在头文件中使用了 extern 关键字,所以在其他源文件中也可以使用 myGlobalVar 变量,只需要包含 myglobalvar.h 头文件即可。类似 static 的局部变量一样值会累加。

2023-06-05 13:19:46 1087

转载 QWidget派生类setStyleSheet方法无效问题

需要创建一个继承自QWidget的类来设计自己的窗口,使用setStyleSheet无疑能方便快捷地配置窗口的一些风格,但是在应用继承自基类的setStyleSheet的方法时发现,设置的style sheet并不能在最终的页面上生效,查阅了官方文档之后发现只需要在派生类中重写一下paintEvent方法。例如:我创建一个继承QWidget的selfWidget的子类,该子类没有ui文件,然后在mainWindow函数里对selfWidget进行setStyleSheet发现无效。方法时就可以生效了。

2023-06-02 16:29:42 1108 1

转载 Qt多线程中槽函数在哪个线程里执行分析

也是代码中注释掉的moveToThread(this)所做的就是将整个thread类移到次线程中,去掉注释,你会发现slot在次线程中运行。可以看到,主线程id和slot_main()中的线程id是一样的,槽函数的线程和主线程是一样的!所以thread类中的slot_main()是在主线程执行,run()函数是在次线程执行。主线程(信号)QThread(槽),但由于没说槽函数是在主线程执行的,所以不少人都认为它应该是在次线程执行了。run函数中的代码时确定无疑要在次线程中运行的,那么其他的呢?......

2022-07-24 15:36:53 3261 3

原创 Qt使用信号量控制线程(QSemaphore)

想要做的操作通过信号量来控制多个线程的执行顺序。比如使用三个线程,按顺序来分别打印字符‘A’、‘B’、‘C’。我将使用两种创建线程的方式来实现如上操作,第一种继承QThread重新run方法,第二种通过QFeature来实现。程序目录。......

2022-07-22 15:31:14 815

转载 基于oracle数据库存储过程的创建及调用

配套B站视频:基于oracle数据库的PLSQL编程以及存储过程的创建和使用视频https://www.bilibili.com/video/BV1Bb411E74d?p=2&spm_id_from=333.851.header_right.history_list.click教学大纲:PLSQL编程:Hello World、程序结构、变量、流程控制、游标. 存储过程:概念、无参存储、有参存储(输入、输出). JAVA调用存储存储过程.1. PLSQL编程1.1. 概念和目的什

2022-07-20 16:08:33 1433

转载 UDP 通信流程

udp是一个面向无连接的,不安全的,报式传输层协议,udp的通信过程默认也是阻塞的。

2022-07-17 16:35:57 15145 1

转载 TCP 通信流程

TCP是一个面向连接的,安全的,流式传输协议,这个协议是一个传输层协议。

2022-07-17 16:28:26 3768

转载 Qt通过Url下载文件

在pro文件中加入:需要依赖写文件以及网络的头文件:具体实现是以阻塞的方式去获取文件的,根据需要看是否要放到线程中执行。如果需要实现断点续传的功能的话则需要的请求的头中指定文件偏移的位置,以及记录本地文件的偏移位置。...

2022-06-29 17:21:38 1323 1

原创 Qt连接神通数据库

1.先去神通数据库官网下载"神通数据库"系统。 2.下载完毕后里面有一个"神通数据库-数据库快速入门.pdf"的操作文档。3.按照操作文档进行安装。4.安装完毕后查看神通数据库的服务是否启动,没启动的话请手动改为启动。5.可以通过odbc数据源功能查看安装的神通数据库驱动。 6.安装完毕后程序目录下会有个"神通数据库-数据库开发手册"7. 我们找到 "使用 SQLDriverConnect 连接" ,里面还有其他方式连接,具体请自行查看 。8.Qt连接的代码如下:...

2022-06-27 09:56:01 1404 5

原创 Qt通过base64对字符串进行加密解密

Qt中通过base64来实现加密解密字符串功能...

2022-06-17 09:46:15 1493

原创 Qt使用动态库,编写Pro文件,整理目录结构

这个教程主要是讲怎么使用动态库(.dll)文件,并且顺便讲一下pro文件的编写文件配置。首先使用库文件那么我们得有库文件,那么我们可以自己先编写一个简单测试的库文件,库文件的编写可以看:Qt创建并使用共享库(.dll .so) 这篇文章。1.获取动态库文件:1).通过上面篇文章我们可以得到几个文件:debug目录下会生成 SharedLibd.dll 和 SharedLibd.lib 文件,注意文件末尾有 d.release目录下会生成 SharedLib.dll 和 Shar...

2022-04-10 18:12:17 3464

原创 QChart设置折线曲线图表关联日期轴(x轴日期关联y轴值)

界面效果:代码:void MainWindow::initChartSpline() { m_mainLayout = new QGridLayout(); ui->widget_dataTransChart->setLayout(m_mainLayout); QString sCurDate = ui->label_curTime_day->text(); QDate dCurrDate = QDate::fromString(sC.

2022-03-23 15:20:45 2569 2

原创 油猴插件(隐藏知乎标题,屏蔽百度搜索广告)

1.隐藏知乎标题先下载安装一个浏览器插件"油猴插件"(Tampermonkey):安装好后可以在浏览器上面查看这个插件,黑色这个,然后点击2这里,添加新脚本,会出来一个代码的页面:然后将如下代码全部复制到这里,如下图,代码已经单独以文本方式给出:代码:// ==UserScript==// @name remove the zhihu title// @namespace https://github.com/woodongwong/// @

2022-03-07 15:31:06 11377

原创 QCombobox树节点展示数据(通过model/view实现)

功能:用正常的QCombobox控件,点击下拉出现树节点展示数据.功能代码:QTreeView treeView = new QTreeView(this);QTreeView treeView->setHeaderHidden(true);QStandardItemModel* model = new QStandardItemModel();QStandardItem* rootItem = model->invisibleRootItem();

2022-02-18 11:07:28 2691 4

转载 QWidget通过qss设置背景颜色而运行界面没效果

QWidget通过qss设置了背景颜色而界面没效果:可以换下面这个方式设置QWidget的背景颜色://设备背景色为白色QPalette pal(this->palette()); //设置的就是当前窗口,当前窗口是QWidget,如果是其他控件换成其他控件pal.setColor(QPalette::Background, QColor("#ffffff"));this->setAutoFillBackground(true);this->setPa.

2022-01-27 14:46:52 2299

转载 Qt的warning C4566:由通用字符名称“\u2027”表示的字符不能在当前代码页(936)中表示

编译器警告,界面显示乱码:ui->paginationButton_6->setText(QString::fromLocal8Bit("‧‧‧")); //直接添加特殊字符在界面会乱码编译器警告(等级 1)C4566:错误消息由通用字符名称“char”表示的字符不能在当前代码页 (page) 中表示并非每个 Unicode 字符都可在当前 ANSI 代码页中表示。窄字符串(单字节字符)转换为多字节字符,而宽字符串(双字节字符)不转换。下面的示例生

2022-01-26 11:54:04 1418

转载 QDateEdit 设置为空,显示日历

背景使用QT的日期控件(QDateTimeEdit、QDateEdit、QTimeEdit)时,它们都自带一个默认值。但是在某些情况下,我们不想要这个默认值。通过现有接口没法实现我们的需求,必须通过继承重构的方式实现。在项目里偶尔需要用到QDateEdit设置为空,但是QDateEdit并不支持,继承QDateEdit实现,效果:继承重构的方式CDateEdit.h:#ifndef CDATEEDIT_H#define CDATEEDIT_H#include <QtCo

2022-01-24 18:25:53 2024

原创 继承QThread,QFuture和QtConcurrent,moveToThread(信号或invokeMethod使用)来使用线程

主要工程代码如下:dialog.h:#ifndef DIALOG_H#define DIALOG_H#include <QDialog>#include "thread.h"#include <QCloseEvent>#include <QFuture>#include <QFutureWatcher>#include <QtConcurrent/QtConcurrent>#include "pushbutton_d

2022-01-19 17:46:31 940

转载 C++ 单例模式讲解和代码示例(C++实现线程安全的单例模式 )

单例是一种创建型设计模式, 让你能够保证一个类只有一个实例, 并提供一个访问该实例的全局节点。单例拥有与全局变量相同的优缺点。 尽管它们非常有用, 但却会破坏代码的模块化特性。在某些其他上下文中, 你不能使用依赖于单例的类。 你也将必须使用单例类。 绝大多数情况下, 该限制会在创建单元测试时出现。基础单例实现一个粗糙的单例非常简单。 你仅需隐藏构造函数并实现一个静态的构建方法即可。相同的类在多线程环境中会出错。 多线程可能会同时调用构建方法并获取多个单例类的实例。main.cc:..

2022-01-18 11:47:36 554

原创 开启新线程QFuture和QFutureWatcher的使用

示例: ui->listWidget->clear(); QString saveDir = ui->lineEdit_path->text(); if(saveDir.isEmpty()) { QMessageBox::information(this,QString::fromLocal8Bit("提示"),QString::fromLocal8Bit("输出路径不为空")); return; }

2022-01-03 15:54:48 958

转载 QT sqlite内存数据库

使用Qt创建sqlite内存数据库#include <QApplication>#include <QSqlDatabase>#include <QSqlQuery>#include <QDebug>#include <QSqlDriver>#include <QSqlError>#include <QStringList>#include <QMessageBox>#include &lt

2021-12-17 13:37:31 1140

转载 QComboBox实现鼠标点击事件

在QT中的ui界面添加QComboBox控件,需求是实现控件的点击事件,查了资料,发现这个控件类的本身是没有点击信号可以使用的,提供的信号为void activated(intindex) void activated(const QString &text) void currentIndexChanged(intindex) void currentIndexChanged(const QString &text) void ed...

2021-12-17 09:28:46 6559

转载 QTableWidget选中Item之后,不改变文字颜色

QTableWidget选中Item之后,保留默认文字颜色问题描述:我们有时候需要给表格的不同单元格设置不同的显示颜色,但是当我们选中一个单元格以后,单元格的状态都会变成蓝底白字。即使是给文字设置了颜色,选中后文字颜色也被显示为白色。与我们想要的效果不符。解决方法:继承QItemDelegate类,重写paint函数。主要代码重写QItemDelegate的paint函数class ItemDelegate : public QItemDelegate{ Q_OBJEC

2021-11-08 17:14:24 973 1

转载 获取jpg(或jpeg)图片中的详细信息(EXIF信息)

getExif.h:

2021-06-02 22:54:12 3124 2

原创 关闭win10在文件上右键出现的 “共享“ 选项

只需要更改注册表里的一个文件的参数即可:第一步:打开注册表 (按 win + R 键,在运行窗口输入 regedit)

2021-06-02 21:58:19 3643

转载 Qt多线程之死锁

一、造成死锁的原因一般性原则,每个临界资源都需要一个线程锁来进行保护,假设有多个线程锁该怎么设计程序呢?先来看以下的一个示例(代码很简单就不加注释了):#include <QCoreApplication>#include <QThread>#include <QMutex>#include <QDebug> int g_i_current_data = 0;QMutex g_mutex_1;QMutex g_mutex_2; cl

2021-05-16 17:38:28 264

转载 Qt创建并使用共享库(.dll .so)

简述在 Windows 中,有动态链接库(DLL - Dynamic Link Library);在 Linux 中,有共享库(Shared Library),它们是相同的!由于平台和编译器的差异,输出的库文件也不同:在 Windows 中,MinGW 将输出.a和.dll;MSVC 将输出.lib和.dll。 在 Linux 中,MinGW 将输出.so、.so.1、.so.1.0和.so.1.0.0-.lib.a和.so是导入库,它们有助于将我们的代码链接...

2021-05-15 18:56:12 1283

转载 Qt创建并使用静态链接库(.lib .a)

Qt之创建并使用静态链接库静态链接库(Statically-linked library),或称静态库,是一个外部函数与变量的集合体。静态库的文件内容,通常包含一堆程序员自定的变量与函数,其内容不像动态链接库那么复杂,在编译期间由编译器与连接器将它集成至应用程序内,并制作成目标文件以及可以独立运作的可执行文件。而这个可执行文件与编译可执行文件的程序,都是一种程序的静态创建(static build)。以过去的观点来说,库只能算是静态(static)类型。创建静态链接库创建静态链接库的步骤和共享.

2021-05-15 17:11:05 7746

转载 QTableWidget数据拖拽复制

效果:tablewidgetdrag.h:#ifndef TABLEWIDGETDRAG_H#define TABLEWIDGETDRAG_H#include <QDialog>namespace Ui {class tableWidgetDrag;}class tableWidgetDrag : public QDialog{ Q_OBJECTpublic: explicit tableWidgetDrag(QWidget *parent

2021-05-14 11:39:55 1465

转载 Qt自定义model

1. 选择合适的Model继承1.1 标准数据模型Qt实现了4类标准数据模型供我们在不同的场景下使用:QStringListModel:存储字符串列表。 QStandardItemModel:存储树状结构的任意数据。 QFileSystemModel:存储本地文件系统上的文件和目录信息。 QSqlQueryModel、QSqlRelationalTableModel、QSqlTableModel:存储关系型数据库中的数据。如果使用情况和上述情况之一比较相似,则可以考虑继承对应的模型类,并

2021-04-28 17:32:48 4063 1

转载 const的用法,Const函数,Const变量,函数后面的Const

在普通的非 const成员函数中,this的类型是一个指向类类型的 const指针。可以改变this所指向的值,但不能改变 this所保存的地址。在 const成员函数中,this的类型是一个指向 const类类型对象的 const指针。既不能改变 this所指向的对象,也不能改变 this所保存的地址。关键字:Const,Const函数,Const变量,函数后面的Const看到 const关键字,C++程序员首先想到的可能是 const常量。这可不是良好的条件反射。如果只知道用 const定义

2021-04-28 16:44:18 4071 1

转载 共享内存实现进程间通讯(QSharedMemory)

 (一)向共享内存中提供数据的一方:  1,定义QSharedMemory shareMemory,并设置标志名shareMemory.setKey(),例如shareMemory.setKey("shareimg");  2,将共享内存与主进程分离shareMemory.detach();  3,创建共享内存shareMemory.create();  4,将共享内存上锁shareMemory.lock();  5,将进程中要共享的数据拷贝到共享内存中;  6,将共享内存解锁s..

2021-02-07 17:30:23 600

35个可商用免费素材网站整理.xlsx

35个可商用免费素材网站整理,图片,视频等一些资源文件的网站合集整理。https://mp.csdn.net/console/editor/html/106613673

2020-06-08

Qt仿windows10记事本

项目使用QtCreator实现的,功能有新建,打开,保存,另存为,翻译和编辑的功能。文字变色,编辑界面变色。对设置的保存操作,读写操作配置文件ini,翻译。博客:https://blog.csdn.net/Superman___007/article/details/96317199

2019-07-17

C#实现聊天程序

本资源是一个C#下的聊天小功能,只适合学习,是通过窗体功能实现的.

2019-05-13

打字游戏(C语言)

本资源是一个数字游戏,就是屏幕上出现数字从上往下移动,每出现一个数字,可以通过键盘输入来消除,使用的是C语言来实现的,环境是在VC下运行,步骤1.下载资源后,打开VC 2.找到刚才下载的文件夹,找到项目下的 "数字游戏.dsw" 文件,直接拖入到VC里面,就可以运行了.

2019-05-13

.Net的存储过程

本资源文件主要将的是存储过程的实现,通过web的增删改查功能来实现存储过程,本资源是使用SqlServer来实现.

2019-05-13

.Net的jsp里添加验证码文件

这个压缩包里面有说明怎么使用验证码代码的功能,只需要添加几个类后,再在html页面修改一些就行!

2019-05-13

国土资源信息核心元数据.pdf

《国土资源信息核心元数据标准(TD/T 1016-2003)》是在国际地理信息标准化技术委员会(ISO/TC 211)的《地理信息 元数据》标准草案的基础上,结合国土资源空间与非空间信息的特点及描述要求而制定的。

2019-05-13

C++五子棋小游戏练习项目

简单的五子棋小项目的资源,可以使用五子棋项目学习简单的C++知识!

2019-03-28

QTreeView控件实现节点的增删改并保存入库

本资源是一个完整的QTreeView增删改的小工具项目,下载只需修改数据库的连接地址即可运行,使用的数据库是mdb数据库(access),可以很好的用来学习QTreeView节点的增删改功能。

2019-03-01

空空如也

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

TA关注的人

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