自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

大坡3D软件开发

自主操作系统和CPU--用软件和芯片来改变世界

  • 博客(3157)
  • 资源 (44)
  • 收藏
  • 关注

原创 鸿蒙OS应用开发的开发环境

当你想投入到这个生态系统里的时候,首先是使用它,这是最方便的方法,比如买一台带有鸿蒙系统的手机,并且不断地使用它,提出你自己的建议,让它进行完善和改进。在这里主要开始学习开发鸿蒙系统的应用,由于鸿蒙系统发布的时间不是很久,当然是相对安卓和IOS来说,因此它是一个全新的系统,并且致力于创建一种更方便的软件方式,它引入不同于以往的软件开发语言,以及不同的界面接口。这时候,就可以看到应用的名称,包的名称,保存的位置,编译的SDK版本,运行模式,是否可视化编辑,语言,兼容性API,设备类型。

2023-12-07 12:31:53 874 1

原创 C#里多列表头的实现方式2

摘要:本文介绍了一个支持树形多级表头的自定义DataGridView控件(DataGridViewEX),通过解析外部传入的TreeView结构实现类似Excel的多级表头效果。控件核心功能包括:1) 初始化模块解析TreeView结构,计算层级关系和列映射;2) 绘制模块通过重写OnCellPainting事件,递归绘制节点及其父节点表头;3) 事件响应模块处理列宽变化和滚动事件,确保表头同步更新。关键技术点包括树形结构与表头的映射规则、递归绘制算法、局部刷新优化以及完善的异常处理机制。该控件有效解决了标

2025-12-03 17:30:03 74

原创 C#里使用DataGridView来创建二级列表头的例子

本文介绍了在WinForms的DataGridView中实现二级表头的技术方案。该方案通过自定义绘制方法,在原始列头上方叠加一级合并表头,形成清晰的层级结构。核心实现包括:1)使用CellPainting事件分层绘制表头;2)处理滚动偏移实现表头同步滚动;3)通过列宽变化事件保持表头宽度同步;4)采用双缓冲技术优化显示效果。方案支持水平滚动、列宽调整等功能,通过Level1Header类管理表头层级关系,使代码结构清晰。最终实现了信息分类明确、显示美观的二级表头效果。

2025-12-02 19:09:12 86

原创 Krypton类库的框架图

Krypton是基于.NET WinForms的开源UI组件库,采用分层架构设计。核心分为:依赖层(WinForms/GDI+基础)、基础设施层(抽象基类/工具类)、样式层(Palette调色板系统)、视图层(View复合渲染体系)和组件层(可复用控件)。通过复合模式构建可视化组件,支持策略模式实现一键换肤,提供Office/VS等预设样式。其优势在于高度可定制化、组件复用性强且兼容原生WinForms,适用于Windows桌面应用开发。ViewDrawButton等核心类体现了视图与样式分离的设计理念。

2025-11-25 09:10:00 56

原创 VisualControlBase 类中的 OnNeedPaint 方法

VisualControlBase类中的OnNeedPaint方法处理调色板存储发出的重绘/布局通知。该方法在控件样式变更时确保及时更新外观,同时优化性能:验证事件参数有效性,检查控件状态;标记需要重新计算透明区域;根据事件参数决定是否需要重新布局;智能处理重绘需求,支持局部或全部重绘,并采用异步刷新避免UI卡顿。通过脏标记和区域化重绘实现高效更新,保证控件在样式动态变化时的正确性和性能。

2025-11-19 11:22:41 287 1

原创 VisualControlBase 类中一个名为 KryptonContextMenu 的属性

摘要: 这段代码定义了一个KryptonContextMenu属性,用于管理Krypton风格控件的右键上下文菜单。作为Krypton控件库的组成部分,它替代了标准的ContextMenuStrip,提供更统一的视觉风格。属性通过get/set访问器实现对菜单实例的管理,在赋值时自动处理事件绑定与解绑,防止内存泄漏。特性标注使其在Visual Studio设计器中归类到"Behavior"类别,并显示描述性文本。该属性采用虚拟定义,允许派生类重写行为,体现了Krypton控件库良好的扩展

2025-11-19 11:03:21 68

原创 VisualControlBase 类中对 ContextMenuStrip 属性

该代码重写了VisualControlBase类的ContextMenuStrip属性,用于管理控件的上下文菜单行为。核心功能包括:1. 获取菜单时直接调用基类实现;2. 设置菜单时先解绑旧菜单的事件处理器,再存储新菜单并绑定其Opening/Closed事件。通过事件钩子机制确保菜单打开时能设置正确的渲染器,使菜单样式与控件风格保持一致,同时避免内存泄漏。这种实现既保留了基础功能,又扩展了自定义逻辑。

2025-11-18 19:52:48 150

原创 VisualControlBase 抽象类的构造函数

摘要: VisualControlBase抽象类的构造函数主要负责控件的核心初始化工作。它通过SetStyle方法配置关键绘制样式(双缓冲、用户绘制、大小改变重绘),确保绘制流畅;初始化刷新/布局回调委托和绘制处理程序;设置初始状态标记(布局脏标记、透明计算等);配置样式系统(全局调色板、重定向器)以保持主题一致性;并附加全局事件监听。这些操作为自定义控件提供了统一的绘制、布局和样式处理基础,简化了后续开发工作。

2025-11-18 19:36:05 44

原创 VisualControlBase 的抽象基类

摘要:VisualControlBase是一个用于实现UI控件的抽象基类,继承自Control并实现IKryptonDebug接口。它具有以下特性:1) 提供控件基础功能;2) 支持调试监控;3) 内置调色板和渲染系统;4) 优化绘制和布局性能。该类通过ToolboxItem等特性标识设计时行为,包含布局状态、调色板、渲染器等核心字段,并定义了PaletteChanged等重要事件。作为抽象类,它封装了通用功能,为具体控件开发提供基础支持。(149字)

2025-11-18 19:29:29 455

原创 C#里类MethodInfo的作用

MethodInfo是C#反射机制中的核心类,用于获取和操作方法的元数据信息,包括方法名、参数、返回值类型等属性。它支持动态调用实例方法和静态方法,适用于框架开发、插件系统等场景。虽然反射调用存在性能开销,但通过缓存MethodInfo实例可优化性能。使用时需注意安全性控制(如访问权限)和异常处理,避免参数不匹配等问题。

2025-11-18 19:25:12 80

原创 IKryptonDebug 的接口

IKryptonDebug接口提供了Krypton控件的调试辅助功能,包含一个重置方法和两个计数器属性。KryptonResetCounters()用于重置内部计数器,KryptonLayoutCounter获取布局循环次数,KryptonPaintCounter获取绘制循环次数。这些功能帮助开发者监控UI性能,识别布局和绘制问题,便于优化控件性能表现。

2025-11-18 19:22:27 177

原创 UI引擎里AceAbility::OnStart函数1

摘要:这段代码展示了AceAbility::OnStart方法的核心初始化流程,主要包括:1)调用父类Ability的默认初始化;2)生成唯一的容器ID;3)使用once_flag确保一次性初始化;4)获取Ability上下文对象;5)准备应用缓存目录。该过程为后续AceContainer创建和ArkUI引擎初始化奠定了基础,体现了HarmonyOS在生命周期管理、资源隔离和多实例处理方面的设计思想,支持冷启动、配置变更恢复和分布式迁移等场景。

2025-10-31 15:46:59 84

原创 鸿蒙应用的启动流程的过程

《HarmonyOS中AceAbility::OnStart()的调用机制分析》 摘要:本文详细剖析了HarmonyOS中AceAbility::OnStart()方法的调用机制。该方法由框架自动管理,调用路径依次为:用户操作触发StartAbility()→AbilityManagerService处理请求→AbilityThread创建实例→通过反射机制最终调用目标Ability的OnStart()。开发者只需重写该方法实现业务逻辑,不应直接调用。调用时需注意:1)必须在200ms内完成,耗时操作应异步

2025-10-28 18:51:57 245 1

原创 AceContainer类中用于初始化任务执行系统的核心方法--AceContainer::InitializeTask

本文解析了AceContainer类中InitializeTask方法的实现逻辑,该方法负责初始化ArkUI框架的任务调度系统。主要功能包括:创建任务执行器(支持自定义或默认实现)、初始化平台线程(UI线程)、设置JS线程策略(声明式JS前端复用UI线程,其他前端使用独立JS线程)。代码体现了性能优化(减少线程切换)与资源隔离(卡片独立线程)的设计理念,通过灵活的参数配置支持主应用、卡片及分布式等不同场景,是ArkUI框架实现高效渲染的核心机制。

2025-10-28 16:27:29 82

原创 三个构造函数AceContainer的区别和作用

本文分析了AceContainer类的三个构造函数:1)FA模型构造函数,使用shared_ptrAppExecFwk::Ability,标识为传统FA模型;2)Stage模型基础构造函数,采用weak_ptr<Context>和weak_ptr<AbilityInfo>,支持子容器标识;3)Stage模型动态组件构造函数,新增TaskWrapper参数支持任务定制。三者通过模型隔离、资源优化和动态扩展设计,为HarmonyOS应用提供多场景适配能力,区别主要体现在核心参数、任务管理

2025-10-24 17:42:23 220 1

原创 AceContainer::Initialize()函数的分析

该代码展示了HarmonyOS ArkUI框架中AceContainer类的初始化逻辑。主要功能包括:1)通过ContainerScope管理容器作用域,确保线程安全隔离;2)根据前端类型(声明式JS/非声明式)进行差异化初始化处理;3)非声明式前端立即调用InitializeFrontend()进行初始化。关键设计点在于解决UI线程依赖问题,通过延迟初始化声明式前端来保证线程安全,同时优化资源使用。该机制体现了框架对多前端类型和复杂线程模型的精细控制能力。

2025-10-24 17:33:29 80

原创 HarmonyOS ArkUI框架中AceContainer类的成员变量定义

该摘要介绍了HarmonyOS ArkUI框架中AceContainer类的核心功能与设计特点。作为UI实例的管理中枢,AceContainer包含9大功能模块:1)核心组件管理;2)资源系统;3)窗口管理;4)卡片支持;5)状态管理;6)事件处理;7)配置扩展;8)线程安全控制;9)扩展能力。其创新设计体现在多实例隔离、精细资源管理、事件处理机制和动态配置更新等方面,支持主窗口、子窗口和卡片等多种UI形态,并通过10+个互斥锁确保线程安全。该框架展现了华为在跨设备UI领域的技术深度。

2025-10-24 17:22:33 466 1

原创 鸿蒙OS 生命周期中调用的函数流程图

HarmonyOS的UIAbility生命周期函数定义了应用从创建到销毁的完整流程。Stage模型下主要包含6个核心函数:onCreate初始化全局资源;onWindowStageCreate加载UI内容;onForeground处理界面可见时的恢复操作;onBackground释放资源并暂停任务;onWindowStageDestroy清理UI资源;onDestroy进行最终资源释放。这些函数覆盖了应用启动、运行、切换和销毁的全过程,开发者需合理利用各阶段进行资源管理和状态维护,特别是onBackgrou

2025-10-24 15:36:01 115

原创 触发页面的 JS 代码加载和根组件更新

本文解析了HarmonyOS ArkUI框架中的loadCallback回调函数,该函数在异步加载JS/ArkTS页面资源后触发JS代码加载和根组件更新。函数通过WeakPtr弱引用JS引擎实例避免内存泄漏,接收页面路径、页面实例和主页面标记三个参数,执行时先加载JS代码再更新根组件,实现从资源加载到UI渲染的完整流程。作为资源加载与JS执行的关键桥梁,loadCallback是ArkUI框架实现页面异步渲染的重要组成部分。

2025-10-23 19:36:58 289 1

原创 TextComponent(文本组件描述)与 FrameNode(渲染节点)的关联

本文分析了HarmonyOS ArkUI中TextComponent与FrameNode的关联机制。TextElement作为中间层连接两者,通过Init()方法完成组件绑定、FrameNode创建及属性同步。TextComponent存储文本属性(内容、样式等),TextElement负责将这些属性转换为FrameNode可用的渲染参数并维护双向引用。当属性变化时,Update()方法触发同步更新并标记渲染节点为"脏"以重绘。这种分层设计实现了文本定义与渲染的解耦,提高了框架的灵活性和

2025-10-23 18:05:07 55

原创 鸿蒙的声明式 UI转换为 JSView

摘要:HarmonyOS声明式UI通过JSView树与Component树的一一映射实现高效渲染机制。JSView作为JS层UI描述载体,存储元素结构、样式和交互逻辑;其派生类(如JSText、JSGrid)实现组件原子化特性。JsiDeclarativeEngine将JSView树转换为原生Component树,每个JSView节点对应特定Component类。这种分层设计实现描述与渲染解耦,支持高效差异更新和跨平台适配,是"声明式描述→高效渲染"的核心链路。

2025-10-22 15:53:01 103 1

原创 鸿蒙 HarmonyOS 应用框架中前端开发模式或应用类型的分类

摘要:FrontendType枚举类用于标识鸿蒙ArkUI框架中的前端开发模式类型,包含7种枚举值(如JSON、JS、ETS_CARD等),分别对应不同的开发范式和场景(传统JS开发、声明式开发、卡片应用等)。框架通过该类型适配不同的解析器、渲染管线和运行时环境,实现资源加载、生命周期管理和开发范式隔离。该设计支持多种开发方式在统一框架下高效运行,满足从简单JSON配置到复杂ArkTS声明的各类需求。

2025-10-21 14:23:34 170

原创 PreloadAceModuleWorker 方法的核心功能

摘要:该代码是JsiDeclarativeEngineInstance类的PreloadAceModuleWorker方法,用于在Worker线程中预加载ArkUI框架的核心模块。主要功能包括:标记Worker模式、初始化ArkTS运行时环境、关联原生引擎、创建局部作用域、注册字符串缓存表、预加载视图组件和枚举类型,以及注入原生模块调用接口。该方法通过预先加载必要资源,确保Worker线程能够高效执行ArkUI相关脚本,并实现与原生引擎的交互,是ArkUI框架支持多线程协作的关键初始化步骤。

2025-10-21 11:27:31 65

原创 使用高性能流式的库SpreadCheetah来添加图片和合并表格单元

摘要:该代码示例演示了使用SpreadCheetah库在WinForms应用中生成Excel文件的操作,包括基础数据写入和百万级数据处理。主要功能有:1)创建简单Excel表(含3条人员信息);2)生成含100万行数据的大型Excel,支持PNG图片插入、单元格合并(如A4:A5)、样式设置(黄色填充/粗体)等操作。关键技术包括异步任务处理、内存优化(复用Cell数组)、图片嵌入流程(EmbedImageAsync+ImageCanvas)等。需要注意文件并发写入风险和大数据处理时的内存占用问题。

2025-10-20 10:06:10 242 1

原创 Harmonyos 中RenderNode的作用

摘要:HarmonyOS中的RenderNode是UI渲染的核心组件,负责封装UI元素的绘制信息(尺寸、位置、样式等),管理渲染层级关系,驱动绘制流程,优化性能(脏区域标记、缓存机制),并适配多种渲染场景。作为UI与底层渲染引擎的桥梁,RenderNode实现了高效正确的UI显示,开发者可通过理解其机制优化性能或进行自定义渲染扩展。(149字)

2025-10-20 08:35:36 185

原创 鸿蒙系统组件编译的内幕

ArkUI组件编译流程:开发者编写的带有@Component注解的struct组件,经ArkCompiler处理后,会转换为继承ViewPU的类。流程包括:1)识别注解标记组件;2)生成中间表示;3)将struct转为class并继承ViewPU;4)注入渲染逻辑和状态管理;5)生成最终可执行代码。ViewPU继承自C++类NativeViewPartialUpdate,由此实现声明式UI到C++组件树的转换,支持界面更新。该流程通过编译器自动完成struct到class的转换,简化开发同时确保符合框架运行

2025-10-17 14:42:38 111 1

原创 使用高性能流式的库SpreadCheetah创建EXCEL文件

摘要:SpreadCheetah是一个专为流式导出优化的Excel库,适合处理大数据量导出。通过异步方式创建Excel文件,支持设置列宽、样式等格式,并逐行插入数据。示例代码展示了如何创建包含多行数据的Excel文件,最后必须调用FinishAsync()方法完成文件写入。相比DOM方式,该库内存占用更小,适合高效生成大型Excel文件。

2025-10-16 09:57:07 245

原创 使用MiniExcel.SaveAsByTemplate快速地保存百万数据

该代码展示了如何使用MiniExcel快速生成并导出百万级销售数据。核心方法GenerateLargeData()可生成指定数量的随机销售记录,包含客户名、日期、VIP状态、积分等20个字段。通过随机函数模拟真实数据分布,并支持自定义数据量(默认100万条)。配合Excel模板使用MiniExcel.SaveAsByTemplate()方法,能高效地将大数据量导出为Excel文件,且处理速度极快。代码结构清晰,包含数据生成、随机日期辅助方法和数据模型类,适合需要批量生成测试数据或导出大型报表的场景。

2025-10-15 14:56:27 98

原创 鸿蒙前端使用按钮组件的处理流程

本文介绍了前端开发中按钮组件的正确使用方式。通过ArkUI提供的<Button>组件,开发者可以便捷地实现按钮功能,框架会自动完成与底层DOMButton的关联。文章展示了ArkTS声明式和JS扩展两种用法示例,并解释了前端组件与底层DOMButton的映射关系,包括属性解析、实例化、渲染关联和事件绑定四个阶段。同时说明了使用封装组件而非直接操作DOMButton的优势:封装隔离底层细节、跨端适配不同平台、提升开发效率。最后强调开发者只需使用框架提供的组件接口,无需关心底层实现。

2025-10-11 10:44:42 109

原创 ZedGraph库里属性介绍(4)AxisLabel

ZedGraph图表库中的AxisLabel类继承自GapLabel,专门用于处理坐标轴标题的显示和属性。该类的核心功能包括:1)通过IsOmitMag属性控制是否在标题中显示数据缩放的数量级因子(如10^3);2)通过IsTitleAtCross属性决定当坐标轴位于图表内部时标题的显示位置。此外,该类还支持克隆和序列化操作,便于保存和恢复配置。AxisLabel在基础文本标签功能上增加了这两个针对坐标轴标题的特殊控制,使开发者能够更精细地调整图表轴标题在不同数据范围和轴位置下的显示效果。

2025-09-23 10:38:45 109 1

原创 ZedGraph库里属性介绍(3)Axis

ZedGraph库中的Axis类是一个抽象基类,定义了图表坐标轴的核心功能。它主要包含以下功能:1. 坐标轴配置:管理位置、可见性和颜色等属性;2. 比例尺系统:通过Scale对象实现数据到像素的转换,支持线性、对数等比例类型;3. 刻度线和网格线:控制主次刻度线和网格线的绘制;4. 标签标题:管理轴标题和刻度标签的显示;5. 布局计算:自动计算坐标轴所需空间;6. 绘制功能:渲染所有坐标轴元素;7. 序列化支持:保存和加载配置。该类为XAxis、YAxis等具体坐标轴类提供基础实现,是ZedGraph图表

2025-09-23 08:27:54 220

原创 ZedGraph库里属性介绍(2)ArrowObj

ZedGraph库中的ArrowObj类实现了图表箭头的绘制功能。该类继承自LineObj,支持定义箭头起点/终点坐标、大小和样式等属性,通过IsArrowHead属性控制是否显示箭头头部。核心功能包括坐标转换、角度计算和图形渲染,实现了ICloneable和ISerializable接口以支持对象克隆和序列化。该类通常作为GraphObjList集合元素,用于在图表中添加标注指示,增强数据可视化效果,其渲染过程通过坐标变换简化了任意角度箭头的绘制逻辑。

2025-09-23 08:24:33 231

原创 ZedGraph库里属性介绍(1) ZoomButtons

ZedGraph库中的ZoomButtons属性用于设置图表缩放功能的鼠标按键。该属性基于C#的MouseButtons枚举类型,支持左键(Left)、右键(Right)、中键(Middle)等选项,默认使用左键。通过ZoomButtons和ZoomModifierKeys组合可定义主缩放操作,同时还提供ZoomButtons2和ZoomModifierKeys2作为次要缩放选项。若不需要某个缩放组合,可将其设置为MouseButtons.None。这些属性均位于Display分类下,具有默认值和描述信息。

2025-09-18 08:27:52 164

原创 ZedGraph库里实现拖动拉伸曲线

本文介绍了在ZedGraph库中实现曲线拖动拉伸功能的方法。通过设置可拉伸区域标识(_showFlexBackground),在用户鼠标进入该区域时提示可操作。核心实现包括:1) 记录拉伸起点坐标(_flexPoint);2) 判断鼠标是否在拉伸区域(LookForFlexAxis);3) 绘制贯穿曲线的拉伸辅助线;4) 处理拉伸动作,根据拖动距离计算缩放因子,动态调整坐标轴范围。该功能允许用户通过拖动操作对密集曲线进行局部放大,便于观察细节,同时保持与其他窗格的轴同步更新。

2025-09-16 09:32:53 160

原创 ZedGraph库里实现坐标拖动图形的背景显示3

本文介绍了在ZedGraph库中实现坐标轴拖动功能的实现方法。主要通过处理鼠标事件实现:1)在MouseDown事件中检测是否处于可拖动区域并初始化拖动状态;2)在MouseMove事件中计算坐标变换,调用PanScale方法实现曲线平移;3)在MouseUp事件中处理拖动结束逻辑。关键步骤包括坐标转换、曲线平移(PanScale)以及状态保存,实现了图形拖动的交互功能。

2025-09-15 10:11:24 76

原创 ZedGraph库里实现坐标拖动图形的背景显示2

文章介绍了在ZedGraph库中实现坐标轴拖动图形背景显示的控制逻辑。通过处理鼠标移动事件(ZedGraphControl_MouseMove),调用RefreshAxis函数检测鼠标位置是否落在坐标轴的可拖动区域。LookForDragAxis方法通过计算坐标轴区域来判断鼠标位置,RefreshAxisBackground函数根据判断结果控制背景显示(ShowDragBackground)。当鼠标进入坐标轴区域时显示拖动背景,离开时则隐藏,实现了交互式的背景显示效果。

2025-09-15 08:57:30 278

原创 ZedGraph库里实现坐标拖动图形的背景显示

本文介绍了在ZedGraph库中实现坐标轴拖动功能的技术方案。通过修改Axis类的Draw方法,在坐标轴区域添加半透明矩形背景来标识可拖动区域。关键点包括:1) 利用_tmpSpace变量管理坐标轴空间;2) 通过Scale类传递拖动区域高度参数;3) 使用半透明颜色填充矩形区域;4) 添加_showDragBackground变量控制拖动区域的显示状态。该方案实现了当鼠标进入可拖动区域时的视觉反馈,为后续的坐标轴拖动功能奠定了基础。

2025-09-12 18:01:07 236

原创 ZedGraph库里GraphPane类里Chart的作用是什么

ZedGraph库中的GraphPane.Chart是数据可视化的核心容器,负责管理绘图区域的布局和渲染。主要功能包括:定义绘图边界(Chart.Rect)、坐标系转换(数据值到像素坐标)、绘制背景和边框。它与坐标轴、曲线、图例等组件紧密协作,通过分离关注点和预计算布局提升性能。Chart作为数据呈现的"物理画布",约束着所有可视化元素的绘制范围,是自定义绘图和交互开发的基础。

2025-09-12 15:18:56 81

原创 ZedGraph画坐标轴的调用栈

ZedGraph库绘制坐标轴的调用栈解析:从ZedGraphControl.OnPaint入口触发,依次通过MasterPane.Draw(布局管理)、GraphPane.Draw(单个图表绘制)、Axis.Draw(坐标轴控制),最终由Scale.Draw实现具体图形渲染。该调用链采用责任链模式,各层专注自身职责(控件→布局→图表→轴→刻度),Graphics对象贯穿传递。性能瓶颈在Scale.Draw的图形操作,典型扩展点包括在GraphPane.Draw插入自定义逻辑或继承Scale类实现特殊刻度渲染

2025-09-11 17:35:32 82

原创 C#里使用NModbus来读取寄存器的值

摘要:本文介绍了使用NModbus库实现Modbus TCP客户端的C#代码示例。程序通过TcpClient连接Modbus从站服务器,利用ModbusFactory创建主站实例,实现了连接管理、日志记录和寄存器读取功能。客户端可指定IP地址、端口号、从站ID和寄存器地址,通过ReadHoldingRegisters方法读取保持寄存器数据,并将结果显示在界面上。代码包含异常处理机制,确保程序稳定性,为工业自动化领域的Modbus通信开发提供了实用参考。

2025-08-07 14:30:08 165

GOOGLE的TPU论文

GOOGLE公开TPU的论文

2017-04-06

C++读写json文件

https://github.com/nlohmann/json 最好用的C++读写json库

2017-12-09

tinyxml2配套源码

在软件开发过程中,为了使软件有灵活的配置,特别像界面这样的配置,同时为了减轻重复开发的任务,需要把客户的个性化需求可以通过配置文件来修改,比如像界面的颜色配置,就可通过配置文件来修改,这时就可以采用XML文件来保存和修改这些参数配置。在不同软件之间进行通讯时,也可以采用XML协议来进行数据交换,特别像WEB服务的调用时,采用传送XML格式是基本的数据交换方式。基于这些任务的需求,需要软件开发人员会在C++里使用xml格式。

2016-06-27

国产8051模拟器

一款国产的8051模拟器(全部源代码) 本软件是一款8051模拟器,他的特点是可以模拟多处理器平台,在简单的多工作区间的界面上可以很方便的模拟8051处理器, 最重要的是这个单片机系统可以完全由你自己订制,你甚至可以随意创建自己的多单片机系统,什么SMP 基于串行总线的分布式系统,集群式系统,只要你能想到的,都可以办到,充分发挥你的想象力。现在1.0版本已经基本体现出了这种思想,在以后的版本中将使这一特性变的 更加强大!

2016-09-10

python抓取天气并分析 实例源码

Python代码抓取获取天气预报信息源码讲解。这是一个用Python编写抓取天气预报的代码示例,用python写天气查询软件程序很简单。这段代码可以获取当地的天气和、任意城市的天气预报,原理是根据url找到网站截取相应的数据展现。 python抓取广州天气并分析 实例源码

2017-08-28

胶囊模型的代码

胶囊模型的代码在以下论文中使用: “Dynamic Routing between Capsules” by Sara Sabour, Nickolas Frosst, Geoffrey E. Hinton. 要求 TensorFlow ( 访问 http://www.tensorflow.org 了解如何安装和升级) NumPy (详见http://www.numpy.org/) GPU

2018-02-02

duilib界面库20161116

更新为VC2015编译的duilib,持续重构代码,使用最新的C++14的语法。

2016-11-16

手写识别的训练数据

MNIST训练数据

2017-03-10

wix3.11版本安装工具

wix3.11版本安装工具

2017-06-19

俄罗斯方块游戏开发

俄罗斯方块游戏开发培训里的可执行文件,让大家可以查看相关的结果。以便是否参加培训。

2016-11-30

WiX3.10版本安装工具

WiX3.10版本安装工具

2017-06-19

mysql开发管理工具

mysql数据库的开发管理工具。

2016-07-12

duilib界面库

duilib界面库,长期维护的界面库,在WIN10和VS2012上编译和开发、测试通过。

2016-10-10

python-3.4.4

python 3.4的32位的windows版本

2016-07-01

duilib界面库20161017

duilib 界面库

2016-10-17

书《深度学习》

2015年,深度学习三大牛Yann LeCun、Yoshua Bengio和Geoffrey Hinton在最新的《Nature》杂志首次合作的发表综述文章《Deep Learning》。本文为该综述文章的中文译文,深入浅出地介绍了深度学习的基本原理,核心优势和未来展望。

2017-03-13

mysql-5.5.50-64

windows下的64位MYSQL的版本。

2016-07-10

protobuf 2.5

protobuf 2.5库代码和工具

2016-06-24

protoc2.5执行文件

protoc执行文件

2016-06-24

深度强化学习论文

DQN的论文

2017-03-17

C#程序导出EXCEL文件

主要方便C#程序导出EXCEL文件,需要下载libxl.dll,然后在工程里引用MyLibxl.dll,就可以在C#里操作EXCEL了。

2025-01-09

C#实现简单protobuf学习的例子

C#实现简单protobuf学习的例子, 可以快速地开发protobuf的功能,这样快速地从一个例子来学习。

2024-10-02

开源鸿蒙4.0不能进入桌面的补丁

系统启动后进入不到桌面 当前系统有 bug,当出现此种问题时,需要执行 killall com.ohos.launcher。 里面的hap文件替换applications\standard\hap\下的同名文件。 目录 oh/applications/standard/hap

2024-03-17

开源鸿蒙 4.0 RK3566开发板配置

开源鸿蒙 4.0 RK3566开发板配置 https://mysoft.blog.youkuaiyun.com/article/details/136779805

2024-03-17

STM32F407VET6工程模板

玩转STM32里文章配置的代码,这里学习的第一个工程代码,可以作为后继开发的模板工程。

2019-03-14

使用WeifenLuo.WinFormsUI.Docking的简单例子

使用WeifenLuo.WinFormsUI.Docking的简单例子,演示了简单地使用这个窗口布局库。

2021-12-10

实现numpy的C++库扩展

使用C++来扩展numpy里的数据计算,这时就需要使用numpy的扩展库功能了,下面就来提供一个使用C++编写numpy扩展库的模板,这样大家就要减少很多弯路,减少跌入坑里的成本。这个扩展库的模板是从mahotas库里抽取出来的,经过最大化的简化,这样更加容易理解,更方便学习。

2019-11-24

Mysql_20210615_1.rar

演示访问Mysql库的C++类库QTL

2021-06-15

hui_test_form.rar

H-ui.admin_v3.1.3.1的学习和测试例子,前端代码的经典。

2021-08-17

python_example.rar

pybind11的安装和编译的例子,可以快速地生成安装包。

2021-06-24

svm_hog_data.rar

使用到LineSVC里进行机器学习的训练数据,用来训练手写识别。 配套专栏文章使用,https://blog.youkuaiyun.com/caimouse/article/details/104599920。

2020-03-02

TestSel1.rar

爬虫日记(28):scrapy使用中间件调用浏览器 相关代码

2021-03-29

ItemDemo_ua.rar

爬虫日记(25):Scrapy 中设置随机 User-Agent 二 的配套代码

2021-03-26

python web py入门配套源代码

python web py入门- 实现论坛,开发技术:后端采用Python+web.py+MySQL,前端采用HTML+CSS+JavaScript+jQuery+RequireJS。

2018-02-23

爬虫日记 Imgfn1.rar

爬虫日记(23):用scrapy快速地爬取蜂鸟网图片 相关的项目代码

2021-03-24

ImgDemo1.rar

爬虫日记(22):最简单地抓取图片,仅5行代码 相关配套代码。

2021-03-23

ItemDemo3.rar

爬虫日记(21):使用Pipeline模块写入文件二 的配套代码。

2021-03-23

ItemDemo2.rar

爬虫日记(20):使用Pipeline模块写入文件 的例子

2021-03-22

ItemDemo.rar

实例使用Item对象,适用初学者,《爬虫日记》配套源码。

2021-03-21

webpy演示例子1

webpy演示例子1, 用于配套文章相关资源。python web py入门(9)- 论坛首页的模板中模板 前面已经提到一个模板中可以套用另外一个模板,现在就来看看这个论坛基本布局模板是怎么样的?

2018-02-21

空空如也

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

TA关注的人

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