- 博客(77)
- 问答 (1)
- 收藏
- 关注
原创 MFC中用户自定义类响应自定义消息
所以,又一个重要的结论,在自定义类能够处理任何消息之前一定要确保m_hWnd关联到一个窗体,即便这个窗体是不可见的。那么有人说,在自定义类的构造函数中调用Create函数就行了,不错,当然也可以在别处调用,只要确保在消息发送之前。但是,Create的调用很有说法,要注意两个地方,第一个参数是类的名称,我建议最好设为NULL;第五个参数是父窗体对象的指针,这个函数指定的对象一定要存在,我建议最好为整个程序的主窗体。还有很多人问第六个参数的意义,这个参数关系不大,是子窗体ID,用于传给父窗体记录以便识别。
2024-11-03 14:10:34
629
原创 VTK9.3.0刻度标签重叠的问题
h中//whl设置某个轴划分刻度区间的个数,可防止轴刻度文本重叠:nAxis轴号,bFlag设置/取消设置的标志,nMajorNum划分区间的个数.cpp中case 0:break;
2024-06-03 14:52:46
467
原创 安装VS2017后,离线安装Debugging Tools for Windows(QT5.9.2使用MSVC2017 64bit编译器)
安装VS2017后,Windows Software Development Kit - Windows 10.0.17763.132的Debugging Tools for Windows默认不会安装,如下图。这时在QT5.9.2无法使用MSVC2017 64bit编译器。如果离线安装,需要从已安装同版本Debugging Tools for Windows的电脑上目录Windows Kits\10下找到Debuggers文件夹复制到待安装电脑上同样的目录下,即可跟正常使用。
2024-06-01 15:04:26
909
原创 vs2017离线安装(配合QT5.9.2使用)
二、创建在目录:C:\vs2017_Professional_Package,把vs2017_Professional.exe放在该目录下。如果用 Microsoft.VisualStudio.Workload.NativeDesktop ,那就下载桌面开发全部。文件名:vs2017_Professional_offline.bat。一、下载安装包vs2017_Professional.exe(在线安装包即可)四、双击vs2017_Professional.exe即可安装。三、制作一个启动bat文件,
2024-04-07 14:49:49
1445
2
原创 QtService实现Qt后台服务程序其二_启动外部exe无窗口异常的解决
所以从Vista 开始Session 0 中只包含系统服务,其他应用程序则通过分离的Session 运行,将服务与应用程序隔离提高系统的安全性。这是因为在Windows XP、Windows Server 2003 或早期Windows 系统时代,当第一个用户登录系统后服务和应用程序是在同一个Session 中运行的,也就是Session 0。但是这种运行方式提高了系统安全风险,因为服务是通过提升了用户权限运行的,而应用程序往往是那些不具备管理员身份的普通用户运行的,其中的危险显而易见。
2023-10-19 11:56:30
1022
1
转载 点云库PCL环境配置:QT 5.9.2+ msvc2017 + PCL1.8.1 + VTK8.0
点云库PCL环境配置:QT 5.9.2+ msvc2017 + PCL1.8.1 + VTK8.0
2023-07-30 16:38:53
908
原创 Qt warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
Qt warning: C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
2022-07-15 11:40:15
7488
4
原创 QT创建子目录项目,可以让项目组织成树形结构的示例:在项目中同时创建Application和第三方动态库(内部)
QT创建子目录项目,可以让项目组织成树形结构的示例:在项目中同时创建Application和第三方动态库(内部)
2022-07-06 09:26:36
1377
原创 C#项目复制到另一台电脑后,NuGet包相关报错解决
1、无法正常下载Nuget 包的问题2、错误MSB4018 “ResolvePackageAssets”任务意外失败的解决方法
2022-04-01 15:49:22
8974
转载 Qt读写Excel文件的方法介绍,及QtXlsx的使用方法
Handling Microsoft Excel file format - Qt Wiki里面总结了Qt读写Excel文件的各种常用的方法,包括一些第三方的插件。通常,在windos系统操作Excel上,QT有两种方式,一是通过COM组件,二是通过QODBC(数据库的方式)。QODBC读取100MB的Excel文件的时候需要十几分钟,因为太慢,这种方法舍弃。网上推荐是使用QAxObject通过COM组件读取,但是这个用法有问题,当机器没有安装Office的时候,是不能调用成功的,即使安装了WPS.
2022-03-03 10:54:23
5061
1
原创 Qt的QTcpServer连接后跨线程接收数据,即跨线程传递使用QTcpSocket连接对象
Qt QTcpServer类一个类(线程)listen监听连接,另一个类(线程)收发数据。Qt规定,QTcpSocket不能作为参数传递。用server端获取到连接QTcpSocket对象后如果要另一个线程收发数据。一个线程信号QTcpServer::newConnection的槽函数中 ,QTcpServer::nextPendingConnection()获取到QTcpSocket对象,然后通过QTcpSocket::socketDescriptor()获取到socketDescriptor后,
2022-01-04 18:39:15
2308
1
转载 Qt modbus相关类QModbusClient踩坑记录
qt 5.9.2读写串口,利用QModbusClient类,频繁读写时,运行一定时间后(20分钟、1小时……)串口发不出去数据,加上手动给它重连后经常会报异常,然后就是直接退出,debug最后的信息是qt.modbus: (Client) Device is not connected"in SerialModbus::sendModbusRawRequestBlock_test: Device not connected."ASSERT failure in processQueue: "send
2021-12-20 10:05:15
2871
转载 Qt中QComboBox实现下拉复选框
void MainWindow::init{ m_workshopListWidget = new QListWidget(this); m_workshopListWidget->setObjectName(QString("listWidget_wkshop")); for(int i=0; i< m_workshopList.length(); i++) { QListWidgetItem *item = new QListWidget.
2021-11-26 19:53:18
1333
1
转载 QT多线程中槽函数如何执行分析
周末天冷,索性把电脑抱到床上上网,这几天看了 dbzhang800 博客关于 Qt 事件循环的几篇 Blog,发现自己对 Qt 的事件循环有不少误解。从来只看到现象,这次借 dbzhang800 的博客,就代码论事,因此了解到一些 Qt 深层的实现,虽然是在 Qt 庞大的构架里只算的是冰山的一角,确让人颇为收益。 从 dbzhang800 的博客中转载两篇关于事件循环的文章,放在一起,写作备忘。 再次提到的一点是:事件循环和线程没有必然关系。 QThread 的 run(...
2021-10-28 15:20:34
2056
转载 解决32位的Qt5.2及以上版本无法连接64位mysql问题(本人实际用32位Qt5.9.2连接64位mysql8.0.22)
在使用Qt连接mysql数据库的时候,遇到过这样的报错,做一下记录和总结。 报错如下: (1)QSqlDatabase: QMYSQL driver not loaded (2)QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7————————————————Qt5.9.2如果使用的是mingw编译器,Qt只有32位的。连接64位的MySQL,即使把mysql安装目录下的libmysq...
2021-09-23 11:06:38
3067
9
转载 C++类前置声明和包含头文件的区别
转载自:C语言类前置声明和包含头文件的区别_Hesy_H的博客-CSDN博客_c 前置声明看完《Effective C++》条款31有感。。尽量用前置声明代替头文件假设有一个Date类Date.hclass Date {private: int year, month, day;};如果有个Task类的定义要用到Date类,有两种写法其一Task1.hclass Date;class Task1 {public: Date getData();};其二
2021-09-16 09:43:06
529
转载 心跳机制TCP SO_KEEPALIVE的议论及其应用-断网检测的C代码实现(Windows环境下)
心跳机制tcp keepalive的讨论及其应用---断网检测的C代码实现(Windows环境下) 之前很多网友都问过一个类似这样的问题: tcp连接ok后,网络如果断了, 怎么检测断网? 其实, 说白了, 也就是检测tcp死链接。 在本文中, 我们来详细讨论一下, 并尝试用C代码实现这个断网检测功能。 本文的讨论还是以Windows为例, 程序也是在Wi...
2020-02-28 17:47:15
1348
5
转载 心跳机制TCP SO_KEEPALIVE详解
TCP协议中有长连接和短连接之分。短连接在数据包发送完成后就会自己断开,长连接在发包完毕后,会在一定的时间内保持连接,即我们通常所说的Keepalive(存活定时器)功能。默认的Keepalive超时需要7,200,000 milliseconds,即2小时,探测次数为5次。它的功效和用户自己实现的心跳机制是一样的。开启Keepalive功能需要消耗额外的宽带和流量,尽管这微不足道,但在按流量计...
2020-02-28 17:41:41
3124
转载 C++服务器设计(四):超时管理机制设计
前四章介绍了系统层的设计,从这一章开始进入服务层的设计。连接断开 在常见的服务器场景中,客户端断开连接的方式为被动关闭。即作为客户端请求完服务器的服务后,选择主动关闭同服务器的连接。在服务器的角度看,服务器是客户端连接套接字read系统调用返回0,触发关闭逻辑,服务器本地是被动关闭连接的。 但是在某些场景中,客户端虽然已经实际断开了与服务器的连接,但是服务器并不能及时检测出此时维护...
2020-02-24 16:33:51
1077
转载 libevent学习一:windows上简单的libevent例子
这里开发主要在windows上开发,熟悉的同学可以修改少量代码移植到linux上去,由于在windows上方便的原因,学习主要还是在windows上面开发,而且linevent是支持跨平台的,所以也可以不用太在意。 上一篇我们已经编译好了libevent,版本是2.1.8,使用的vs 版本是vs2017。 这里给大家推荐一下:http://www.wangafu.net/~ni...
2020-02-05 16:07:44
518
QT5.9.2+VTK8.0怎样渲染加速?
2023-11-14
QT5.9.2中QPrinter+QTextEdit+html导出PDF不能指定换页位置
2023-11-14
Qt中的状态机(QStateMachine)主要是用来做界面动画的么?
2021-12-30
TA创建的收藏夹 TA关注的收藏夹
TA关注的人