- 博客(28)
- 资源 (4)
- 收藏
- 关注
原创 Qt通过句柄获取其它进程控件实例
1.通过spy++获取想要获取控件的句柄id。通过spy++获取另一个软件的文本框的句柄。根据句柄获取文本框的内容。
2024-06-27 14:26:47 417
原创 C++设计模式之单例模式
单例模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。
2024-06-19 21:40:48 459
原创 Labview调用Qt动态库的方法(与网上现有教程不同的是能用qt类)
【代码】Labview调用Qt动态库的方法(与网上现有教程不同的是能用qt类)
2024-04-15 15:23:35 618
原创 QLibrary笔记
使用QLibrary可以在程序运行时加载动态链接库。一个QLibrary的实例作用于一个单一的共享库上。QLibrary提供了一种平台无关的方式访问库中的函数。可以在构建QLibrary的实例时将要加载的库文件传入,也可以在创建实例后使用setFileName()显式的设置要加载的文件名。当加载库文件时,QLibrary会搜索所有平台特定的库位置,除非传入的文件名具有绝对路径。如果传入的文件名具有绝对路径,那么会首先尝试加载该目录。如果该文件找不到,QLibrary会使用不同的平台特定的文件前缀或后缀再次
2022-04-08 11:30:46 1151
原创 QMdiArea之QMdiSubWindow子窗口隐藏系统标题栏
关于QMdiSubWindow去掉系统边框最小化的问题问题简述解决方案具体代码示例问题简述QMdiSubWindow去掉系统边框然后使用自定义实现菜单栏,进行最小化操作,第一个窗口的位置坐标在mdiarea显示范围之外。所以造成消失的问题。应该是自定义菜单栏没有重写对应的系统事件和最小化窗口的size。解决方案将最小化之前,显示系统标题栏,然后最小化,然后在隐藏系统标题栏,setvisible(true)。就解决这个问题。之前比较困扰,懒得去理他,最近才想到这个解决方案。具体代码示例void M
2022-03-21 15:47:28 2070
原创 QtWebEngine模块发布程序之后,软件崩溃的问题。
使用QtWebEngine模块,加载网页功能。程序发布后,点击加载会在有的系统上崩溃的解决办法第一种原因是:机器的显卡和系统所带的显卡驱动不匹配,导致QtWebEngine在渲染时出现了崩溃。解决办法:升级显卡驱动(如果是集成显卡,可能需要升级主板驱动)。第二种-在软件运行目录下添加文件,目前还不知道这几个文件起到什么作用,随后再看目录是:.\Qt5.9\5.9.1\msvc2015_64\resources\icudtl.datqtwebengine_devtools_resour
2021-11-19 15:27:28 2540
原创 QWebEngineView之加载html打印PDF
QWebEngineView通过QWebEngineView加载html文件打印pdf相比自己手动绘制pdf简单的多,制作好对应的html文件,然后Qfile读取html文件模板,替换函数需要替换的value,存成html文件,然后QWebEngineView加载,就直接能够打印成对应格式的pdf了。//读取html文件 QFile outFile(QStringLiteral("C://Users//JWGB//Desktop//出厂检验报告.html")); if(!outFile.
2021-10-21 11:00:05 2232 2
原创 std::lower_bound()和std::upper_bound()
//★对于升序排列的容器://std::lower_bound(): 返回一个迭代器,指向键值>=val的第一个元素。//std::upper_bound(): 返回一个迭代器,指向键值>val的第一个元素。//★对于降序排列的容器://std::lower_bound(): 返回一个迭代器,指向键值<=val的第一个元素。//std::upper_bound():返回一个迭代器,指向键值<val的第一个元素。//***注意//★当 val<队列最小值时,lowe
2021-09-18 09:02:52 663
原创 QPainter之ASSERT: “!fillData->clip->clipRect.isEmpty()“ in file painting\qpaintengine_raster.cpp
出现这个问题的原因是drawText 的时候 如果要绘制的文本过长,按font计算出来超过rect的宽度 就会报这个错误。debug版本会崩溃,release版本不会。
2021-08-27 15:38:11 884
原创 Inno Setup安装脚本 修改系统环境变量,有则跳过,没有则创建。
借鉴网上博客大佬,然后进行修改之后编译不报错的版本,添加了通过list循环遍历判断是否包含即将添加的环境变量,避免用pos如果某一变量包含当前需要变量就无法创建的问题//------------------添加系统环境变量,避免找不到cmd-----------------------------------procedure SetEnv(aEnvName, aEnvValue: string; aIsInstall, aIsInsForAllUser: Boolean);varsOrgValue
2021-08-12 16:03:40 1485
原创 C++单例模式以及C++单例类模板
C++单例模式以及C++单例类模板在单例类里,又分为了懒汉式和饿汉式,它们的区别在于创建实例的时间不同:懒汉式 : 指代码运行后,实例并不存在,只有当需要时,才去创建实例(适用于单线程)饿汉式 : 指代码一运行,实例已经存在,当时需要时,直接去调用即可(适用于多线程)用法将构造函数的访问属性设置为private,提供一个GetInstance()静态成员函数,只能供用户访问唯一一个实例.定义一个静态成员指针,用来供用户获取重载 (=)赋值操作符以及拷贝构造函数,并设为private, 避免对
2021-06-24 11:40:08 225
原创 Qt加载Qt动态库dll
Qt加载含有socket模块的dll时当加载含有network模块的动态库时,被加载的工程也需要在pro文件上加上QT+=network语句,要不然会报错,找不到QTcpSocket头文件
2021-06-18 14:01:59 246
原创 Qt之QMdiArea的平铺问题
QMdiArea之tile平铺问题大多数窗口都是自定义,有些界面会设置固定大小,避免拉伸带来不美观的效果。例如:设置界面最大大小和最小大小是一个size this->setMaximumSize(1000,700); this->setMinimumSize(1000,700);结果使用QMdiArea的平铺函数时就会出现问题ui->mdiArea->tileSubWindows();当主界面最大化时,多窗口进行平铺操作,就会将主窗口还原,将size变成
2021-06-17 18:50:59 1147
原创 解决QT无法调试问题-----the cdb process terminated情况之一
解决QT无法调试问题-----the cdb process terminatedthe cdb process terminatedQt版本:5.7.1,windows10由于程序使用了提权,所以qt应该使用管理员权限运行,否则不管怎么调试构建运行,都会提示the cdb process terminate的,粗心导致,经验分享一下,做个笔记避免遗忘,哈哈哈。...
2021-01-28 13:45:34 1085
原创 QTableWidget的clear()
QTableWidget之清除内容QTableWidget作为封装好的的表格控件,基本的使用方法QTableWidget基本都包含了,今天主要说下关于QTableWidget的清除函数。clear(),清除函数,清空QWidgetWidget的全部内容,包括表头内容,清空完之后表头内容会默认成为1,2,3,4之类。但是不会删除掉行和列,比如表格|1| 2 ||3|4|| 5 | 6 | clear之后| | ||–|--|| | |只是text清掉,如果重新从0行插入数
2020-07-30 17:26:20 5103
原创 QThread之terminate()
@[TOC]QThread之terminate()关于Qt线程终止基本的Qt线程两种方法,一是:继承QThread类,然后重写run()函数,二是:movetothread(),通过信号和槽连接,运行在线程中。线程终止关于线程终止基本简单的也是两点,如下优雅的结束线程 ,调用QThread的wait();quit();等待线程函数执行完毕。然后退出线程。利用标志位,使其线程退出,但是如果线程里代码复杂,需要标志位太多,这种优雅放视就不太合适。暴力结束线程,terminate();这种方
2020-07-29 14:04:27 8195
原创 c++设计模式之观察者模式
什么是观察者模式呢?观察者模式(Observer)完美的将观察者和被观察的对象分离开。举个例子,用户界面可以作为一个观察者,业务数据是被观察者,用户界面观察业务数据的变化,发现数据变化后,就显示在界面上。面向对象设计的一个原则是:系统中的每个类将重点放在某一个功能上,而不是其他方面。一个对象只做一件事情,并且将他做好。观察者模式在模块之间划定了清晰的界限,提高了应用程序的可维护性和重用性。
2019-01-18 20:55:06 162 2
原创 小菜鸡的设计模式——策略模式
设计模式之策略模式什么是策略模式呢?设计原则UML图合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入什么是策略模式呢?策略模式...
2019-01-10 21:06:37 130
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人