- 博客(27)
- 收藏
- 关注
原创 基于 C# WPF + HALCON 的工业视觉算法工具框架(开源)
《月薪3000实习生开发的WPF-HALCON视觉检测工具》摘要: 本文介绍了一款由实习生开发的低成本工业视觉检测工具,基于WPF+HALCON实现,包含找线、找圆、读码和模板匹配四大核心功能。工具采用三层架构设计(算法层PiCoreAlgo、UI配置层和测试层),通过可视化界面解决了现场人员无法编程调试的痛点,支持参数配置保存和多皮肤切换。文章用幽默对话形式详解各功能参数设置与故障排查技巧,如找圆功能的"质检员"比喻、模板匹配的"记住青春"提醒等。该工具将复杂算法封
2026-06-13 15:03:55
382
原创 C# TCP通讯(客户端)
摘要:PTcpClient是基于System.Net.Sockets.TcpClient封装的TCP客户端类,提供可靠通信功能。核心特性包括:1) 支持UTF-8编码的字符串发送;2) 内置连接状态管理;3) 可配置线程休眠间隔(默认150ms);4) 集成日志系统(PLog)和通知中心(PNotificationCenter)。使用时需指定服务端IP/端口和客户端名称,通过Connect()建立连接,SendData()发送消息,支持同步和异步接收模式。适用于设备通讯、数据采集等TCP长连接场景,具有线程
2026-05-17 15:15:46
547
原创 C# 一种很好用的设计模式 不同对象之间进行解耦通信
本文介绍了基于观察者模式的轻量级通知中心PNotificationCenter的实现与应用。该方案通过单例模式确保全局唯一通知中心,使用字典存储多播委托实现发布-订阅机制,支持线程安全的跨模块通信。核心包含三个方法:AddObserver注册监听、RemoveObserver取消订阅、PostNotification发布通知。在日志系统示例中,PLog作为发布者发送日志通知,person类和LogForm窗口作为订阅者接收处理,实现了完全解耦的模块间通信。该方案具有低耦合、易扩展、统一管理等优势,适用于日志
2026-04-17 15:58:09
431
原创 C#自定义全屏提示框、对话框
FullScreenMask是一个WinForms自定义全屏遮罩组件,提供多种对话框功能。主要特性包括:支持半透明遮罩效果、主题颜色(蓝色信息/黄色警告/红色错误)、点击关闭功能,以及动态嵌入子窗体。提供两种对话框类型:1)提示框(单按钮通知);2)确认对话框(双按钮选择)。核心方法包括Show_Information()、ShowDialog_Confirm()等,支持透明度调节和防止重复弹出。通过静态方法实现全局遮罩管理,使用颜色主题区分不同消息类型,适用于需要突出显示的系统提示场景。
2025-10-23 00:05:36
485
原创 C#系统日志
本文介绍了系统日志的作用与实现方法。系统日志用于记录程序运行时的事件、错误和性能数据,可用于排障、运行分析、审计和监控。文章通过C#示例展示了如何逐步构建一个自定义日志系统:从基础控制台输出开始,逐步添加时间戳、本地存储、日志分级功能,最终封装成线程安全的单例模式,并实现异步日志写入。还介绍了如何将日志系统打包为DLL供其他程序调用,并演示了在WinForms应用中的实际使用场景。文章涵盖了日志系统的核心功能实现,包括线程安全队列、后台线程处理等关键技术点。
2025-09-27 11:39:53
1136
原创 QT+Visual Studio 配置开发环境教程
本文介绍了Qt开发环境的搭建与选择,重点对比了QtCreator和VisualStudio+QtVSTools两种开发工具。QtCreator轻量级、跨平台,适合追求Qt/QML深度支持的开发者;而VisualStudio+QtVSTools则更适合Windows平台下的企业级开发,提供丰富的调试与扩展功能。文章还详细说明了Qt的安装步骤,包括路径选择、模块安装、环境变量配置等,并介绍了VisualStudio的安装与Qt插件的集成。最后,作者分享了个人的开发偏好,倾向于使用Qt+VisualStudio组
2025-05-17 11:39:08
5576
2
原创 数据库实验报告 数据定义操作 3
数据定义操作10月12日1-2节1、本次实验是用sql语句创建库和表,语句是固定的,要求熟记这些sql语句。点击“新建查询”——在命令行使用命令建立数据库创建了数据库后点执行,右击数据库“刷新”,即可看到左边出现了students数据库。查看students的属性可以看到创建的数据文件和日志文件如下图所示打开D盘即可看到创建的school数据库的数据文件和日志文件2.根据下图创建带有两个数据文件和两个日志文件的数据库test.
2025-05-17 11:37:55
912
原创 数据库实验报告 SQL SERVER 2008的基本操作 1
SQL SERVER 2008的基本操作9月14日1-2节数据库的基本操作:包括创建、修改、附加、分离和删除数据库等。本次实验不涉及程序和算法。
2025-05-12 22:43:33
730
原创 数据库实验报告 系统E-R图设计 2
本次实验主要围绕系统E-R图设计展开,实验内容包括实体集转换关系模式、E-R图转换为逻辑模型的关系模型、1:1和1:n联系的转换方法,以及m:n关系的转换。实验过程中,通过具体示例展示了如何将E-R图转换为关系模式,如学生、员工、课程等实体的转换。实验未涉及程序和算法,主要关注数据模型的转换。实验过程中未遇到问题,整体较为简单,但在插入数据时出现的红色感叹号提示需冷静排查原因。实验顺利完成,教师评语未提及。
2025-05-12 22:42:53
574
原创 软件设计师/系统架构师---计算机网络
网桥(Bridge) 是一种工作在 数据链路层(OSI第二层) 的网络设备,主要用于连接两个或多个局域网(LAN),基于 MAC地址 实现帧的转发与过滤。逻辑网络设计是体现网络设计核心思想的关键阶段,在这一阶段根据需求规范和通信规范,选择一种比较适宜的网络逻辑结构,并基于该逻辑结构实施后续的资源分配规划、安全规划等内容。外观跟三层交换机很像,功能不一样。网络之间的互连协议(Internet Protocol,IP)是方便计算机网络系统之间相互通信的协议,是各大厂家遵循的计算机网络相互通信的规则。
2025-04-20 21:45:26
1351
原创 论各主流编程语言运行效能之研究报告
运行耗时结果: C++(49ms) < C#(96ms) < python (10993ms)三种编程语言运行结果都是一样的 4999999950000000。运行耗时不一样 果然C++才是YYDS ,感兴趣的可以把程序拷贝回去试试。我的CPU是17-12700H。不同的开发环境 运行的结果回不一样。有人问:为什么没有别的编程语言,例如Java、JavaScript、Go、R我回答:我只会这三种语言,别的编程语言我不会,也没有开发环境。会的小伙伴可以试试,在评论留下你运行的答案 作为参考。
2025-03-24 21:10:05
562
原创 Python调用deepSeek API
用 Python 调用 DeepSeek API 可以开发许多有趣的应用,尤其是在结合即时通讯工具(如 QQ、微信)时,通过 AI 实现自动回复、智能对话等功能。
2025-02-07 19:30:37
2099
3
原创 软件设计师/系统架构师---计算机操作系统
操作系统(Operating System,简称 OS)是计算机系统中最核心、最基本的系统软件,负责控制和管理计算机的硬件资源和软件资源。属于本人学习的总结,操作系统这么课的内容挺多的,以下的内容针对于软考的考点总结,如果想深入学习可以去看看bliliblili的王道考研《操作系统》,内容丰富 通俗易懂 当然所花费的学习成本更高。如果应试的小伙伴话专学考点知识,多做真题,多做真题,认真做每一道真题。加油!!
2024-12-03 16:18:41
1099
原创 QT C++ 的 QTableWidget数据导出CSV
如果你开发的QT应用程序没有数据查询或者数据统计功能,可以使用此功能做导出数据可以让excel表格复杂的数据处理、数据查询。
2024-10-03 21:29:20
745
原创 华硕天选3重装系统方法,提供资源和教程
这里注意一下,你的系统原本的C盘再PE系统不一样也是叫C盘,可能叫D盘、E盘等。:UEFI可以利用更高效的磁盘读取方式,每次读取的数据量远超传统BIOS的64KB限制,这意味着计算机可以更快地完成启动过程,尤其是在使用SSD固态硬盘时,UEFI可以显著减少启动时间。:这是UEFI的一项重要安全特性,它能够防止未经授权的引导加载程序和操作系统启动,从而提高了系统的安全性,防止恶意软件在系统加载之前就感染系统。答:这种情况就需要借助另一台电脑,例如 你家的另一台,或者朋友的,也可以是网吧的。
2024-07-27 10:38:24
3838
1
原创 QT 前期小白们常遇到的 QImage.save 保存图片失败。已经有解决方法,而且支持中文路径。
没事的宝贝,你要走的坑,我给你踩过一遍。我写了简单的保存图像接口函数,复制拿去用,都加了备注,可以根据你的喜欢去改。//img 需要保存的图像//savePath 保存路径//fileName 保存文件名//复制存储路径//加载存储路径//保存合格表示符//保存图像绝对路径if (dir.exists()) { //判断路径是否存在,如果存在,则保存图像qDebug()
2024-06-08 17:28:33
3418
原创 QT C++ QWidget 自定义头窗口头标+毛玻璃效果
1. 创建新项目 QWidget2.创建CglasseFfect 类,实现毛玻璃效果+去掉传统窗口标题头。CglasseFfect类又代码,赋值使用就行。3.创建属于自己的自定义标题头 例如我的 "TitleBar“4.调用自定义标题头.h文件Q_OBJECTpublic:// 字体为Arial,大小为20)// 字体为Arial,大小为20)//设置头部样式private:signals:private:// 移动窗口的变量;
2024-04-14 23:07:34
1246
2
原创 QT C++ QWidget 实现毛玻璃窗口,透明+模糊效果
你可以自己把我的CglasseFfect类 复制去使用,创建QWidget去继承CglasseFfect。这样你的QWidget 就没有这么多复杂的代码,直接调用四个方法 修改自己想要的背景即可。需要做自定义窗口表头的,这样会更加好看。标题功能的基本功能 有最小化 、最大化、关闭窗口、窗口移动。我继承了QWidget也就写好一个类叫CglasseFfect。写了四个方法 修改背景。需要添加 winextras 模块,我用的是 vs+QT5。程序看起来又臭又长,不用管, 直接 ctrl+c。
2024-03-21 00:58:46
6002
8
原创 QT C++ 显示不同颜色标志日志信息和保存日志信息本地(.txt)
Q_OBJECTpublic:Warning,Critical//显示日志接口。
2024-02-22 21:05:04
949
1
原创 QT C++ 数据保存到本地excel表格 (.txt .csv)复制拿去用
文件路径 ,写绝对路径/// 文件名.后缀( .csv 或者 .txt)/// 文件内容QVariantMap(键是文件头)
2024-02-05 15:29:28
1999
1
原创 Qt C++ 的QString用法,QString非常常用,必不可少
section方法接收三个参数,第一个参数是指定的分隔符,第二个参数是子串的索引(从0开始),第三个参数是标志位,表示截取的方式。这两个方法都接收两个参数,第一个参数是待查找的字符串,第二个参数是查找起点的位置。mid方法接收两个参数,第一个参数是待截取的字符串的起始位置,第二个参数是待截取字符串的长度。按","为分隔符分割字符串,返回2个子串,list的值为["apple", "banana,pear"]按","为分隔符分割字符串,list的值为["apple", "banana", "pear"]
2024-01-26 21:28:45
1277
1
原创 QT C++ QComboBox 控件 选择事件,选择后 发出事件
/ 在代码中创建 QComboBox//获取当前选择的文本//获取当前选择的索引,注意 是从0开始的。
2024-01-21 22:13:17
3233
1
原创 QT C++ 数据结构之队列用法
队列(Queue)是一种基本的数据结构,它遵循先进先出(First-In-First-Out,FIFO)的原则。在队列中,新元素被添加到队列的末尾,而元素的移除发生在队列的前端。这意味着最早进入队列的元素会最先被移除。队列的典型应用场景包括任务调度、广度优先搜索算法、缓冲区管理等。在计算机科学和软件工程中,队列通常是用于解决需要按顺序处理的问题的一种重要数据结构。
2024-01-09 21:37:21
3199
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅