Qt编写项目作品大全

一、自定义控件大全(一)、控件介绍超过150个精美控件,涵盖了各种仪表盘、进度条、进度球、指南针、曲线图、标尺、温度计、导航条、导航栏,flatui、高亮按钮、滑动选择器、农历等。远超qwt集成的控件数量。每个类都可以独立成一个单独的控件,零耦合,每个控件一个头文件和一个实现文件,不依赖其他文件,方便单个控件以源码形式集成到项目中,较少代码量。qwt的控件类环环相扣,高度耦合,想要使用其中...

置顶 原创 点赞0 阅读39 收藏0 评论0 2021-06-02

Qt编写的项目作品5-气体安全管理系统

一、功能特点采集数据端口,支持串口端口+网络端口,串口支持自由设置串口号+波特率,网络支持自由设置IP地址+通讯端口,每个端口支持采集周期,默认1秒钟一个地址,支持设置通讯超时次数,默认3次,支持最大重连时间,用于重新读取离线的设备。控制器信息,能够添加控制器名称,选择控制器地址+控制器型号,设置该控制器下面的探测器数量。探测器信息,能够添加位号,可自由选择探测器型号,气体种类,气体符号,...

置顶 原创 点赞0 阅读31 收藏0 评论0 2021-06-02

程序员的情诗-当封装已成为往事

我能抽象出整个世界,但不能抽象出你,因为你在我心中是那样的具体,所以我的世界并不完整。我可以重载甚至覆盖世界里的任何一种方法,却不能重载对你的思念,我试着重写个方法时,才发现爱你是一个死循环,它不停的返回对你的思念压入我心底的堆栈。你怎么会知道,在这无尽的黑夜中,我的内存里已经再也装不下别人,

原创 点赞0 阅读0 收藏0 评论0 16 小时前

Qt编写安防视频监控系统50-地图配置

一、前言视频监控系统中集成了百度地图模块,支持在线和离线,离线的需要先把离线的瓦片地图下载到本地放到对应文件夹才可以正常使用,瓦片地图其实就是一张张图片,按照约定的规则,经纬度值+缩放比例进行排列,此模块全部封装成了地图组件,留出了对应的接口进行设置即可,其中包括地图秘钥、缩放级别等。

原创 点赞0 阅读17 收藏0 评论0 1 天前

Qt开源作品38-无边框窗体方案(无抖动,支持win、linux、mac等系统,侧边半屏顶部全屏)

一 前言不知道各位程序员有没有遇到过这样一种困惑,好不容易在开源网站找到了类似的想要的项目代码,结果down下来一编译,我勒个去,几百个错误,根本没法用,熟悉的人还好可以直接阅读代码进行修改(有些只要做小改动就能正常编译,有些可能需要大刀阔斧)

原创 点赞0 阅读18 收藏0 评论0 1 天前

Qt编写安防视频监控系统49-多数据库支持

一、前言 数据库设置模块,因为很多项目都会用到,索性这期间也将这玩意重新架构了一遍,对应的数据库组件同样重写了一遍,关于数据库的参数无非就6个,数据库类型(sqlite、mysql等)、数据库名称、主机地址、通信端口、用户名称、用户密码。默认提供了视频监控系统的数据库脚本文件(拓展名sql结尾的文件),单击初始化数据按钮可以对整个数据库进行新建和重置,相当于恢复出厂。系统支持多种数据库,默认sq

原创 点赞0 阅读0 收藏0 评论0 3 天前

关于Qt数据库相关开发的一些经验总结

一、数据库开发经验总结在数据库相关的应用中,如果仅仅是单机版本,没有特别的需要(比如领导指定,或者需要远程存放数据),强烈建议使用sqlite数据结构、索

原创 点赞0 阅读11 收藏0 评论0 3 天前

Qt编写安防视频监控系统44-视频上传

后期可以增加自动上传机制,监听文件夹改变(一旦发生改

原创 点赞0 阅读51 收藏0 评论0 8 天前

Qt编写安防视频监控系统47-基本设置

无法直接阅读。随着功能的增多,配置文件对应的节点参数也越来越多,监控系统也是如此,记得第一个版本的时候也就十个左右的参数(标题、开机运行、界面风格等),现在光基本设置

原创 点赞0 阅读27 收藏0 评论0 8 天前

Qt编写安防视频监控系统48-视频参数

一、前言视频参数之前在基本参数中,后面越来越多,直接独立了出来,甚至还拆分出来了视频参数1、视频参数2,参数越来越多分组也越来越多的时候,你会发现分组名

原创 点赞0 阅读36 收藏0 评论0 8 天前

Qt编写安防视频监控系统46-视频存储

一、前言 在整个视频监控系统的开发迭代升级过程中,遇到过各种奇奇怪怪的需求,都是客户提出来的,有些需求很合理,有些就不那么的自然了,牢记这客户是上帝的原则,能满足的尽量满足。相信各位同行的研发人员都会有同感,随着做的越深入,可能某一个功能要点,都能衍生好多种细分功能点需求,满足不同的用户场景需要。比如这个视频存储功能点,不就是个视频存储功能吗,打开的时候开启存储保存到视频文件不就完了,理论上是这

原创 点赞0 阅读33 收藏0 评论0 11 天前

关于Qt选择qml还是widget的深度思考

在Qt界始终有两大阵营产生激烈的纷争,那就是选用qml还是widget好,大量初学者也会问这个问题,有以下几点总结。 widget属于传统界面开发,和VB/VC/Delphi等拖曳控件开发类似,走CPU绘制,能最大化的兼容现有的硬件和过去的相对偏低性能的硬件。 qml属于新时代的产物,大概从2010年开始,和flutter/Electron等web开发框架及移动开发框架类似,为了适应各种移动端开

原创 点赞0 阅读30 收藏0 评论0 11 天前

Qt编写安防视频监控系统45-图文报表

一、前言图文报表对应以前的文字报表,以前的日志查询后,需要打印或者导出,都是一行行的文字记录,近期需要图文警情记

原创 点赞0 阅读31 收藏0 评论0 12 天前

Qt项目升级到Qt6吐血经验总结

Qt的版本发布越来越频繁,Qt6发布已经有一段时间了,越来越多的人咨询之前的代码是否可以增加对Qt6的支持,包括开源的项目QWidgetDemo(一年时间超过2.6K star),近期百忙之中,对所有项目进行了Qt6的兼容升级,自此所有项目从Qt4兼容到了Qt6,耗时一个多月,总计更新调整代码行数一万多行。虽然更新工作量不是很大,但还是废了九牛二虎之力,毕竟项目数太多,光几十个项目作品中的其中之一自定义控件就188个子项目,为了方便自己也为了总结分享经验,特意整理了从Qt4兼容到Qt6的一些经验要点,只是部

原创 点赞0 阅读7 收藏0 评论0 17 天前

Qt编写安防视频监控系统42-用户权限

一、前言前几年写这个视频监控系统的时候,就规划过要加入用户权限管理,因为不属于急需要的功能一直耽搁至今,近期刚好其他几个项目要需要这个功能,和秘钥认证一样,于是一鼓作气就把这几个功能一块干掉,本次完成的也不是非常完整的强大的用户权限管理,强大的用户权限管理,可以做到每个按钮每个菜单都能进行权限控制,这样其实就比较复杂了,对用户来说也复杂了,需要专业的人来操作对应的软件,这一次要完成的用户权限,目标是通用的权限能够通用现有的各大项目,实现基础的权限控制,比如进入到对应子菜单模块、删除记录、退出系统等。其中为

原创 点赞0 阅读13 收藏0 评论0 17 天前

Qt编写安防视频监控系统43-图片回放

一、前言之前就已经具备了本地回放、远程回放、设备播放3个模块,其中本地回放用来回放存储在软件本地电脑上的视频文件;远程回放需要通过调用厂家sdk或者GB28181(没实现,后期考虑增加)从NVR回放视频;设备播放通过通 ,能够拿到一堆图片序列,自定义规则存储,触发报警后也拿到一堆图片序列,这样可以通过这个模

原创 点赞0 阅读14 收藏0 评论0 17 天前

Qt编写安防视频监控系统41-秘钥认证

一、前言早些年开源过一个秘钥生成器,做的比较粗糙,离真正的商业应用还差点距离,这次在用户的强烈要求下,对秘钥认证这块做了重新的改版,对原有的类进行了重写,重写后一个类不到300行完成所有的事情,并提供了完整的生成秘钥示例和使用示例。

原创 点赞0 阅读57 收藏0 评论0 19 天前

Qt开发经验小技巧156-160

Qt的UI界面在resize以后有个BUG,悬停样式没有取消掉,需要主动模拟鼠标动一下。void frmMain::on_btnMenu_Max_clicked(){ ...... //最大化以后有个BUG,悬停样式没有取消掉,需要主动模拟鼠标动一下 QEvent event(QEvent::Leave); QApplication::sendEvent(ui->btnMenu_Max, &event); }项目中启用c++11语.

原创 点赞0 阅读10000+ 收藏0 评论0 23 天前

Qt编写安防视频监控系统36-onvif连续移动

一、前言时隔一年多,重新对视频监控系统的onvif内核重写,一方面为了兼容Qt6,一方面按功能分类提高效率。整体逻辑思路是一样的,主要的改动是由于Qt6不再支持QtXmlPatterns模块(其实这个模块在Qt5的后面的版本也逐渐提示为废弃模块),onvif协议通信中的数据都是带有命名空间的xml数据,用QtXmlPatterns模块去解析是最合适的,现在全部改成了用最原始最基础的QtXml模块去解析,毕竟QtXml模块肯定是一直在的,这是相当基础的模块,无论以后Qt7还是Qt100肯定都会有。之前云台

原创 点赞0 阅读10000+ 收藏0 评论0 23 天前

Qt编写项目作品35-数据库综合应用组件

一、功能特点同时支持多种数据库比如odbc、sqlite、mysql、postgresql、sqlserver、oracle、人大金仓等。一个数据库类即可管理本地数据库通信,也支持远程数据库通信等。数据库线程支持执行各种sql语句,包括单条和批量。组件中的所有类打印信息、错误信息、执行结果都信号发出去。集成数据库通用翻页类(负责具体处理逻辑),搭配分页导航控件(负责外观),形成超级牛逼的翻页控件。集成数据库自动清理类,设定最大记录数后台自动清理早期数据。集成自定义委托类,支持复选框、文本框、

原创 点赞0 阅读10000+ 收藏0 评论0 23 天前

Qt编写安防视频监控系统38-onvif校时

一、前言在视频监控系统中,对摄像机进行时间设置也是很有必要的,这样就和服务器或者软件这边统一了时间,一般在摄像机的画面上可以设置OSD标识当前时间,这样存储到视频文件中回放的时候,也能和本地的时间一致,一般的视频监控系统默认都会开启ONVIF校时,通过标准的公开的onvif协议来对前端摄像机设备进行时间设置,当然也可以获取时间。前端摄像机设备和后端管理软件或者服务器时间统一是非常重要的一个因素,本人经历过很多视频监控系统相关的项目,很多时候的报修情况就是因为前端设备时间和服务器端不一致的情况,导致的各种奇

原创 点赞0 阅读10000+ 收藏0 评论0 23 天前

关于Qt几百个版本无法兼容的深度思考

关于Qt众多版本(至少几百个)都不兼容的问题,在经过和Qt中国的林斌大神和其他大神(Qt非官方技术交流群)头脑风暴以后,最终得出以下的结论。Qt在二进制兼容这块,已经做了最大的努力,通过将各种代码细节隐藏,Q指针+D指针技巧,尽量保持了接口的统一;是否兼容最主要考虑编译器的因素,毕竟任何Qt版本都是需要通过编译器编译成对应的二进制文件,由他说了算。如果两个Qt版本采用的编译器版本一样,极大概率可执行文件是兼容的,比如 Qt5.10+msvc2015 32 位 和 Qt5.11+msvc2015 32位

原创 点赞0 阅读10000+ 收藏0 评论0 23 天前

Qt编写安防视频监控系统40-onvif线程处理

一、前言整个onvif模块大部分的功能都有了以后,除了在demo上点点按钮可以执行获取结果显示外,最终还是要应用到视频监控中,在按钮上点点和系统中后台自动运行是两码事,比如onvif校时和事件订阅,不会说是傻到在监控系统界面上提供按钮给用户点击才去执行,最多做的应该是系统设置中提供两个开关比如自动校时、事件订阅,可以方便的开启这几个功能。开启以后等监控系统启动后自动去处理,比如挨个对摄像机进行校时处理以及订阅事件,为了能够做到添加摄像机后自动立即应用,特意改成了在打开摄像机视频画面的时候,主动去实例化De

原创 点赞0 阅读10000+ 收藏0 评论0 23 天前

Qt编写安防视频监控系统39-onvif图片参数

一、前言通过onvif来调整图片的Brightness(亮度)、ColorSaturation(色彩饱和度)、Contrast(饱和度)这三个参数,可以实时观测到监控画面对应的变化,比如讲亮度Brightness拉到最低

原创 点赞0 阅读10000+ 收藏0 评论0 25 天前

Qt编写安防视频监控系统37-onvif预置位

一、前言预置位在视频监控系统中是不可或缺的存在,响应预置位功能的前提是要带预置位的云台球机,有些普通的云台球机其实不带预置位的,这个要检查清楚,硬件上不支持该功能的,你再怎么点也没反应。在这个视频监控系统的使用过程中,就有不少的用户会问这个问题,为啥他点了云台没法应之类的,前提是要硬件支持才行啊。

原创 点赞0 阅读10000+ 收藏0 评论0 2021-06-28

QCustomplot绘图性能的改善

QCustomPlot采用了诸如自适应采样和文本对象缓存之类的各种技术,以减少重新绘制所需的时间。但是,某些功能(如复杂的半透明填充和粗线)仍会导致速度显着下降。如果您在应用程序中注意到这一点,这里有一些有关如何提高重复打印性能的提示。到目前为止,大部分时间都花在了绘图功能上,尤其是在绘制高密度图和其他绘图表时。为了获得最佳性能,请考虑以下几点:特别是在图形,粗线,半透明颜色下/之间使用复杂的填充时:通过QCustomPlot :: setOpenGl启用QCustomPlot的OpenGL硬件加速渲

原创 点赞0 阅读10000+ 收藏0 评论0 2021-06-04

个人总结的编程经验语录

个人总结的经验语录学习编程是一个渐变的过程,1年精通,3年熟悉,8年入门,10年懵逼,15年颈椎康复指南,30年灰飞烟灭。老板或者客户:什么需求我不清楚,想要什么效果也不知道,但是你做出来什么是我不想要的,这个我很清楚!杀死一个程序员很简单,改几次需求就可以了!一个控件从0到基本可用,如果差3条街的话,从可用到好用,还差着30条街。控件如此,软件系统亦如此。一行代码,1块钱...

原创 点赞0 阅读10000+ 收藏0 评论0 2021-06-04

个人总结的经验语录

学习编程是一个渐变的过程,1年精通,3年熟悉,8年入门,10年懵逼,15年颈椎康复指南,30年灰飞烟灭。老板或者客户:什么需求我不清楚,想要什么效果也不知道,但是你做出来什么是我不想要的,这个我很清楚!杀死一个程序员很简单,改几次需求就可以了!一个控件从0到基本可用,如果差3条街的话,从可用到好用,还差着30条街。控件如此,软件系统亦如此。一行代码,1块钱,知道怎么写,100块钱。好比医院...

原创 点赞0 阅读9741 收藏0 评论0 2021-06-04

error LNK2026: 模块对于 SAFESEH 映像是不安全的

之前一直用qtcreator+msvc,今天用宇宙无敌第一的vs,发现编译的时候链接库会报错。提示error LNK2026: 模块对于 SAFESEH 映像是不安全的,你大爷的!解决方法:1.打开该项目的“属性页”对话框。2.单击“链接器”文件夹。3.单击“命令行”属性页。4.将 /SAFESEH:NO 键入“附加选项”框中,然后点击应用。...

原创 点赞0 阅读3538 收藏0 评论0 2021-06-04

QCustomPlot版本问题(setSubTickCount、setDateTimeFormat、setTickLabelType等更改)

Qcustomplot入门请点击: Qcustomplot入门教程QCustomPlot官网上现有两个主版本的软件供下载,在QCustomPlot的实际使用中,我发现:1、对于2.0版本的库,原本1.0的库中QCPAxis中可以使用的几个函数,如setSubTickCount、setDateTimeFormat、setDateTimeSpec、setTickLabelType等几个函数被移除了...

转载 点赞0 阅读3630 收藏0 评论0 2021-06-04
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8