自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (16)
  • 收藏
  • 关注

原创 QWebEngineView右键菜单翻译

在代码中实现this->pageAction(QWebEnginePage::Back)->setText(QStringLiteral("后退"));this->pageAction(QWebEnginePage::Forward)->setText(QStringLiteral("前进"));this->pageAction(QWebEnginePage::Reload)->setText(QStringLiteral("刷新"));this->page

2022-03-27 14:34:22 1147 1

原创 Qt增加QTextEdit右键菜单增加中文翻译

qt右键菜单增加翻译内容

2022-03-27 14:26:36 1016 1

原创 Qt笔记28:QJsonObject和QByteArray的相互转换

/** * @brief 字节数组转Json * @param byteArray * @return */QJsonObject getJsonFromByteArray(const QByteArray &byteArray){ QJsonParseError jsonParseError; QJsonDocument jsonDoc = QJsonDocument::fromJson(byteArray, &jsonParseError); QJs

2021-05-19 22:45:02 1809

原创 Qt笔记27:QGraphicsView、QGraphicsScene坐标系问题,QGraphicsView缩放

(1) QGraphicsView、QGraphicsScene坐标系问题,场景初始状态(0,0)在QGraphicsView的中间,随着添加item,(0,0)位置会发生变化。想要scene和view保持同样大小可采用方法正确的解决方案是setSceneRect(0,0,W,H);而且需要W>=static_cast< QWidget *>(graphicsScene->parent())->size().width()H>=static_cast< QWi

2021-05-19 08:53:51 2006

原创 Qt笔记26:qt在构造函数获取窗口大小失败

不能在构造函数中获取窗口的大小,因为还未初始化好,获取的不正确;推荐在resizeEvent方法里获取。

2021-05-19 08:49:47 500 1

原创 Qt笔记25:QFile读写中文乱码:指定文件编码方式

QFile读写中文乱码:指定文件编码方式解决方法用QTextStream来读写文本QTextStream in(&file);in.setCodec("UTF-8"); // 设置文件的编码格式为UTF-8QString line = in.readLine(); // 此时以UTF-8的方式从文件中读取内容,结果正常...

2021-05-19 08:48:15 5332

原创 Qt笔记24:Qt Designer插件

QtDesigner导入自定义插件Plugin,dll存放路径,D:\Qt\Qt5.13.0.x86\5.13.0\msvc2017\plugins\designer

2021-05-19 08:44:23 228

原创 Qt笔记23:qt运行时库vcredis位置

QtCreator下lib文件夹中有响应版本的vcredis版本或者D:\Qt\Qt5.7.0\vcredist文件夹中的

2021-05-19 08:43:40 182

原创 Qt笔记22:样式表相关问题

(1)子类设置样式表不生效,是因为需要设置一个属性setAttribute(Qt::WA_StyleBackground, true);(2)样式表中涉及到命名空间的用–代替::namespace ns { class MyPushButton : public QPushButton { // ... } } // ... qApp->setStyleSheet("ns--MyPushButton { background: yellow;

2021-05-19 08:42:26 143

原创 Qt笔记21:使用了未定义的类型

使用了未定义的类型,可能是头文件的#define存在重复的情况

2021-05-19 08:38:51 2619

原创 Qt笔记20:无法解析的外部文件

无法解析的外部文件:1、检查pro文件中是否进入了正确的lib;

2021-05-19 08:38:16 174

原创 Qt笔记19:合理在头文件中使用类声明(class)

建议在cpp中包含头文件,在include文件中类使用class声明,一方面避免重复包含,提高编译效率;另一方面避免形成包含闭环,运行时找不到

2021-05-19 08:36:45 1195

原创 Qt笔记18:qt拖拽数据QMimeData

Qt qt拖拽数据QMimeData,可以重写QMimeData mimmData(const QList<QListWidgetItem>)const;方法

2021-05-19 08:35:16 651

原创 Qt笔记17:Qt如何使用Json传输图片(使用Base64编码)

我们有时候会用json传输数据,那么如何使用json传输图片呢,这里使用Base64编解码。(1)发送放编码://从图片文件中读取QByteArray img = file.readAll();//转换成base64编码QByteArray img64 = file.readAll().toBase64();//打包进jsonjsonObj.insert("img", QJsonValue::fromVariant(img64));(2)接收方解码://从json中读取为base64

2021-05-19 08:31:40 2107

原创 Qt笔记16:继承QGraphicsItem不能检测到鼠标事件解决方法

问题:继承QGraphicsItem不能检测到鼠标事件原因:有可能是边界方法重写的不对[pure virtual] QRectF QGraphicsItem::boundingRect() const解决:在子类中重写QRectF boundingRect()方法

2021-05-19 08:28:22 1179

原创 Qt笔记15:qt如何优雅的退出子线程

//优雅的退出线程if(thread->isRunning()){ thread->quit();//退出线程 thread->wait();//等待退出 delete thread;//删除线程 delete networkObj;//删除对象}

2021-05-19 08:25:50 2731

原创 Qt笔记14:Qt网络编程

(1) 客户端本地可以连接服务器,局域网不能连接问题:防火墙端口、杀毒软件(2) 如果把网络数据收发放到子线程里,线程while(1)循环很快,在该循环中,循环过快,导致connect来不及处理数据,使用waitForReadyRead()将循环进行阻塞,当有数据读入时取消阻塞,进入下一轮循环。尽量不要使用死循环,可以用信号或者定时器。...

2021-05-19 08:23:54 105

原创 Qt笔记13:qt中多线程之一(MovetoThread方法)

QT多线程有两种方法实现1、继承QThread,子线程内容在重写的run方法里执行,启动线程用start(),run()方法中尽量不使用死循环,run()方法中要调用exec()才能启动事件循环;2、继承QObject类,然后使用movetoThread()方法,连接线程的started()信号,在槽中处理子线程的内容。在新的版本中,官方更推荐第2种方法,第2种方法的使用如下://(1)创建操作对象,该类继承自QObject类MyTableNetworkObject networkObj;//(

2021-05-18 08:55:09 515

原创 Qt笔记12:qt非阻塞延时

非阻塞的延时QEventLoop+QTimer延时五秒示例:QEventLoop eventloop;QTimer:singleShot(5*1000,&eventloop,&QEventloop::quit);eventloop.exec();

2021-05-18 08:45:14 531

原创 Qt笔记11:qt如何设置应用程序图标和可执行程序图标

我们使用Qt开发了桌面程序之后,很多时候要修改窗口标题和应用程序图标,那么如何来设置呢?1: 首先准备个ICO图标。注意只能是ico格式的图标,如果不是可以使用ps或者网页在线图标转换。例如:myapp.ico将myapp.ico放到工程目录下,课.pro同级目录即可(也可以放在别的路径,只要相对路径正确即可)2:用记事本新建个文件里面就写一行:IDI_ICON1 ICON DISCARDABLE “myapp.ico”保存改名为 myapp.rc文件并把它放到你的

2021-05-18 08:30:25 2480

原创 python判断文件夹是否存在,不存在则创建

import osdef create_not_exist_dir(path): if not os.path.exists(path): is.mkdir(path)

2021-04-08 16:08:04 449

原创 Windows逆向分析实战:使用CE+OD获取用户信息

序:很多想学软件逆向分析的朋友们,初学者往往看到一大堆的技术资料,直接就懵了。本文以一个简单的例子,演示一下使用CE+OD进行内存的获取,然后使用Qt进行界面显示,让初学者简单了解逆向分析的流程,并且一步步自己进行手动实现,让初学者有一些成就感,避免直接上来就是技术文档打击到学习的热情。一、准备工作:CheatEngine 简称CE 用来定位数据;Ollydbg 简称OD 用来动态调试;微信版本:3.1.0.67Qt:5.13.0用来开发界面(我喜欢用Qt做界面,习惯使用MFC的朋友们也可以使用

2021-03-17 11:47:19 4335 3

原创 Qt笔记10:如何使用qt计算屏幕物理尺寸

我们以计算A4纸在屏幕上显示的像素来进行示例:转换方式:显示器逻辑分辨率 = 像素/英寸 = 像素/(2.54 * 厘米) = 像素/(2.54 * 毫米 /10)像素= 分辨率 * 英寸 = 分辨路 * (2.54 * 厘米) = 分辨率 * (2.54 * 毫米 / 10) QScreen *screen = windowHandle()->screen(); qreal logicalDotsPerInch = screen->logicalDotsPerInch();//

2021-03-11 23:45:07 1165

原创 Qt笔记9:Qt中浮点数比较,安全的进行浮点数比较

由于计算机中数据的存储到最底层,只有1和0,所以会有一个精度的问题。我们在比较浮点数的时候,在A>B或者A<B的时候,我们可以正常用大于号(>)或者小于号(<)进行比较;但是我们在判断两个浮点数是否相等的时候,则不能直接用==号进行比较,因为这样会有风险那么如何安全的进行浮点数的比较呢,就用到了Qt的一个方法bool qFuzzyCompare(double p1, double p2),使用方法如下: double value1 = 5.323285194326; dou

2021-03-11 23:39:03 3924

原创 Qt笔记8:如何遍历树形结构(选择遍历,节点选择效果)

用到的信号是void itemChanged(QTreeWidgetItem* item, int column);我们在使用Qt的树控件QTreeWidget的时候,经常会遇到需要检查当前节点的选中状态;一般一个节点有三个状态:A:当前节点以及所有子节点都被选中B:当前节点以及所有子节点都未被选中C:当前节点的子节点有被选中的,也有未被选中的根据这三个状态我们知道,当前节点状态会影响父节点的状态,同时呢,当前节点也会收到子节点的影响。根据以上特性,会用到递归算法,有些朋友可能代码写着写着就迷

2021-03-11 23:28:52 1640

原创 Qt笔记7:QString采用科学计数法、非科学计数法显示

在Qt中,界面经常会用来显示一些结果,当显示的数据值过大时,QT会直接转换成科学计数法显示。但是在有些项目中,对数据有特定的显示要求,有时候需要用科学计数法显示,有时候一定要用非科学计数法显示。那么该如何设置呢我们可以通过下面的方式设置: double value =987654321.12345; //显示科学计数法:'e'表示科学计数法,2代表保留两位小数 QString::number(value, 'e', 2); //显示非科学计数法:'f'表示非科学计数法,2代表保留两位小

2021-03-11 23:18:05 5648

原创 Qt笔记6:堆和栈的区别

看了理论如果不清楚可以看下边代码: int a = 0; //全局初始化区 char *p1; //全局为初始化区 int main(int argc, char *argv[]) { int b; //栈区 char s[] = "abc"; //栈区 char *p2; //栈区 char *p3 = "123456";//"123456/0"在常量区,p3在栈区 static int c =.

2021-03-11 23:11:10 651

原创 Qt笔记5:如何把按钮设置默认状态

想要实现如下图确定按钮的默认选中状态:方法:在Qt Designer点击确定按钮,然后在右侧属性栏找到default这个属性,按下图进行设置,也可以在代码中设置。

2021-03-11 23:02:34 2159

原创 Qt笔记4:QTableWidget排序功能

QTableWidget排序功能(1)、注意默认是按照文本方式来排序的,对于想要数据排序的设置如下:方法一:设置QTableWidgetItem的setData方法,第一个参数是Qt::EditRole, int value = 20; QTableWidgetItem *item = new QTableWidgetItem; //这样设置,排序是按照数字来排 item->setData(Qt::UserRole,value);方法一有一个问题,当double数据太长时,数据类型会自

2021-03-11 22:58:58 6322 13

原创 Qt笔记3:MySQL的my.ini文件中文乱码或不识别

MySQL的my.ini文件中文乱码或不识别,解决步骤:(1)MySQL的my.ini文件只支持 编码格式为ASIN,要将my.ini设置为ASIN格式(2)Qt中写入my.ini文件要进行设置,设置为GBK格式,如下图

2021-03-11 22:47:17 320

原创 Qt笔记2:如何处理路径中的空格和中文

(1)空格:路径加双引号 (2)中文:toLocal8Bit ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210311224107698.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80Mjk2MjUxNg==,size_16,color_FFFFFF,t_70)...

2021-03-11 22:42:11 470

原创 Qt笔记1:Qt中文显示乱码如何处理

中文显示乱码问题处理方式在文件头部加入 #pragma execution_character_set(“utf-8”)如图:

2021-03-11 22:36:25 170

原创 在Qt中使用大漠插件示例(版本3.1233),包含下载、注册、使用教程

序、大漠插件简介大漠综合插件(dm.dll)采用vc6.0编写,是一款集前后台,文字识别,图色,键鼠,窗口,内存,DX,Call等功能于一身的综合插件。主要用于按键精灵、简单游、易语言等辅助制作工具,具有识别速度超级快的特点! 采用COM接口编写,适用于所有语言调用。文本主要介绍下大漠插件的下载、注册和使用,希望能帮到需要的朋友们。一、下载1、下载:目前网上资源鱼龙混杂,不好辨别,我这里放出来验证过的最后一个免费版本 [大漠插件3.1233](https://download.csdn.net/d

2021-03-10 09:48:32 10771

原创 Eigen3编译教程(eigen3.3.9+vs2017+cmake超详细、末尾有编译结果)

0简介Eigen是一个高层次的C ++库,有效支持线性代数,矩阵和矢量运算,数值分析及其相关的算法。Eigen是一个开源库,从3.1.1版本开始遵从MPL2许可。Eigen目前最新的版本是3.3.5,除了C++标准库以外,不需要任何其他的依赖包。Eigen使用的CMake建立配置文件和单元测试,并自动安装。如果使用Eigen库,只需包特定模块的的头文件即可。Eigen适用范围广,支持包括固定大小、任意大小的所有矩阵操作,甚至是稀疏矩阵;支持所有标准的数值类型,并且可以扩展为自定义的数值类型;支持多种矩

2021-02-27 20:43:24 9142 6

原创 Window7下使用VS2017编译VTK-8.2.0的64位动态库教程(超详细)(附编译的库包含32位和64位)

本文使用VTK-8.2.0和VS2017进行编译,并制作本编译教程,提供给新入门的朋友们参考;喜欢动手又有时间的朋友们可以参照本文进行VTK的库的编译,也可以下载我编译好得(在文章末尾,包括vtk-8.2.0的32位库和64位库,vtk-9.0.1的32位库和64位库)。源码下载:首先下载VTK-8.2.0源码包编译工具是cmake:cmake3.9.12编译过程1、创建目录D:/Demo/VTK作为编译根目录,将下载的源码解压到根目录,另外在根目录下建立两个文件夹build、install,分

2020-12-29 20:07:38 808 2

原创 Window7下使用VS2017编译VTK-9.0.1的64位动态库教程(超详细)(附编译的库包含32位和64位)

前言:是一个开源的免费软件系统,主要用于三维计算机图形学、图像处理和可视化。今天编译最新版VTK-9.0.1,并整理成编译教程,提供给新入门的朋友们参考;我使用vs2017编译VTK的64位库,编译32位库的过程和这类似。可以参照本文进行VTK的库的编译,也可以下载我编译好得(在末尾,包括64位和32位)。一、源码下载下载VTK-9.0.1源码编译工具是cmake,官网进行下载:cmake3.9.12二、编译过程1、创建目录F:/Demo/VTK作为编译根目录,将下载的源码解压到根目录,另外

2020-12-26 17:24:26 1196

原创 VS2017 64位 osg+osgworks+bullet3+osgbullet编译教程(超详细、附生成的库(文末尾自取))

VS2017 64位 osg+osgworks+bullet3+osgbullet编译教程(超详细、附生成的库(在文末尾))最近因为工作需要编译了osgbullet,网上教程比较乱,没有一个系统的编译说明,我结合网上资料,进行编译,梳理出来本篇教程,超详细的。

2020-12-18 13:41:35 1381 4

ICOFormat(32位+64位)(Photoshop制作ICO图标插件)

Photoshop ICO插件安装方法: 1、先将下载ICO插件压缩包进行解压,然后得到ICOFormat.8bi这个文件。 2、将得到的ICOFormat.8bi文件复制到PS安装目录下的Plug-Ins文件夹下,然后重启Photoshop后在保存选项里就会多出一个ICO格式,至此就OK了 如放入Plug-Ins目录后没有效果,请将ICOFormat.8bi文件放入\Plug-Ins\File Formats目录下。 (CC2019是放在Adobe Photoshop CC 2019\Required\Plug-ins\File Formats这个目录下) 注意:如果是32位系统,放入ICOFormat.8bi这个文件;如果是64位系统,放入ICOFormat64.8bi这个文件。

2021-03-29

Qt+Windows逆向分析源码,读取微信用户信息

Windows下逆向分析源码,界面使用Qt,进程和读取内存使用Windows方法,

2021-03-17

逆向分析三件套CE+OD+IDA

软件逆向分析工具包:CE用来定位数据,OD用来动态调试,IDA用来看代码 懂得自然懂

2021-03-16

Qt实现自动发消息源码(Qt中使用大漠插件3.1233)

Qt调用大漠插件,包含最后一个大漠插件免费版本,大漠插件3.1233,中文手册、Qt实现微信消息自动发送,自动注册,可设置发送内容和发送次数

2021-03-10

大漠插件3.1233

大漠插件3.1233免费的最后一个版本,里边包含中文开发手册

2021-03-01

eigen-3.3.9(包含详细编译教程)

eigen-3.3.9源码,从官网下载的,添加我自己编写的详细编译教程,找不到可以从这里下载

2021-02-24

eigen3+vs2017+cmake使用vs2017编译Eigen3库 Eigen3.3.9库

使用vs2017和cmake编译的Eigen3.3.9的库,32位64位通用

2021-02-24

ogre-sdk-v2.2.4-vc19-x64.7z

ogre的sdk,我从官网下载的,版本v2.2.4,vc19,64位

2021-01-01

ogre-sdk-v1.12.10-vc15-x64.zip

ogre的sdk,我从官网下载的,版本1.12.10,vc15,64位

2021-01-01

ogre-sdk-1.11.6-vc15-x64.zip

ogre的sdk,我从官网下载的,版本1.11.6,vc15,64位

2021-01-01

VS2017 32位 VTK-8.2.0编译生成库 静态库 动态库 lib文件和dll文件

VS2017 32位 VTK-8.2.0t编译生成库,包含include、lib、bin、share四个文件夹,包括Debug版本和Release版本,我自己动手编译的。

2020-12-29

VS2017 64位 VTK-8.2.0编译生成库 静态库 动态库 lib文件和dll文件

VS2017 64位 VTK-8.2.0t编译生成库,包含include、lib、bin、share四个文件夹,包括Debug版本和Release版本,我自己动手编译的。

2020-12-28

VS2017 32位 VTK-9.0.1编译生成库 静态库 动态库 lib文件和dll文件

我自己编译的,VS2017 32位 VTK-9.0.1t编译生成库,包含include、lib、bin、share四个文件夹,Debug和Release都有

2020-12-26

VS2017 64位 VTK-9.0.1编译生成库 静态库 动态库 lib文件和dll文件

VS2017 64位 VTK-9.0.1t编译生成库,包含include、lib、bin、share四个文件夹

2020-12-26

vs2017_Community+vs2019_community

vs2017_Communit和vs2019Community社区版安装包,官网下载需要注册账号,我下载下来放到这里,提供你们使用

2020-12-19

VS2017 64位 osg+osgworks+bullet3+osgbullet编译生成库 动态库 静态库 bullet碰撞检测

VS2017 64位 osg+osgworks+bullet3+osgbullet编译生成库,包含include、lib、bin、share四个文件夹

2020-12-18

空空如也

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

TA关注的人

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