2022年11月18日

NModbus4项目2——模拟量数据的读取与显示

摘要: PLC中常用的数据类型分别是: 1、布尔量 2、整数,16位,整数为有符号数,最高位为符号,1表示复数,0表示正数,范围:-32768~32767; 3、浮点数,32位,用来表示小数 由于NModbus4读取到寄存器的数据都是ushort类型,因此读数据时需要将转ushort换成整数或者浮点数,或者 阅读全文

posted @ 2022-11-18 16:13 hanzq_go 阅读(1421) 评论(0) 推荐(0) 编辑

2022年11月16日

NModbus4项目1——使用NModbus进行简单的线圈和寄存器的读写操作

摘要: 准备工作: 1、增加一对虚拟串口,COM4和COM5,如下所示: 2、使用Modbus Slave软件建立3个数据区,从左到右分别是线圈,寄存器(存放整数),寄存器(存放浮点数) Modbus Slave的站地址为1,其他信息如下: 步骤1、创建一个串口 首先添加引用,using System.IO 阅读全文

posted @ 2022-11-16 14:40 hanzq_go 阅读(5129) 评论(0) 推荐(0) 编辑

2022年11月9日

WinForm中的多线程

摘要: 使用BeginInvoke或Invoke 作用 在自己创建的非UI线程中,进行UI操作,比如更新UI上控件的状态。 Windows 窗体中的控件被绑定到特定的线程,不具备线程安全性。因此,如果从另一个线程调用控件的方法,那么必须使用控件的一个 Invoke 方法来将调用封送到适当的线程。 如果已经创 阅读全文

posted @ 2022-11-09 12:15 hanzq_go 阅读(727) 评论(0) 推荐(0) 编辑

2022年11月8日

DataGridView应用

摘要: DataGridView应用: 应用1:将获取的行数据保存到实体 private void dataGridView2_CellContentClick(object sender, DataGridViewCellEventArgs e) { //获取行数据并转化为实体 Student stude 阅读全文

posted @ 2022-11-08 15:15 hanzq_go 阅读(61) 评论(0) 推荐(0) 编辑

2022年10月31日

异步多线程解决界面卡顿问题

摘要: 异步多线程解决界面卡顿问题 点击button下载一个网页,并将网页的长度显示在textbox中。 注意是将网页的长度显示在textbox中,而不是将下载的网页字符显示在textbox中,因为太大的字符串在textbox上显示本身就会卡界面。 using System; using System.Ne 阅读全文

posted @ 2022-10-31 16:49 hanzq_go 阅读(213) 评论(0) 推荐(0) 编辑

Task执行多个任务并取得汇总结果(不卡界面)

摘要: 如何执行多个Task任务的汇总结果,并且不会卡界面的方法: 解决步骤: 1、单个且有返回值的Task任务,将结果显示到界面上,分析卡界面的原因; 2、单个且有返回值的Task任务,将结果显示到界面上,不卡界面; 3、多个且有返回值的Task任务集合,将结果汇总后显示到界面上,不卡界面; 按下按钮开始 阅读全文

posted @ 2022-10-31 11:16 hanzq_go 阅读(447) 评论(0) 推荐(0) 编辑

2022年10月30日

DataGridView控件3——常用事件

摘要: DataGridView的常用事件: 1、CellClick,CellContentClick,CellDoubleClick 2、CellValueChanged,CurrentCellDirtyStateChanged 1、CellChanged事件和CellContentClick事件,功能相 阅读全文

posted @ 2022-10-30 22:59 hanzq_go 阅读(2170) 评论(0) 推荐(0) 编辑

DatagridView控件2——绑定数据源,设置列类型为CheckBox,ComboBox,Button,Link

摘要: DatagridView2 实现内容: 1、绑定数据源 2、手动编辑DatagridView属性后并绑定数据源 3、设置列类型为CheckBox 4、设置列类型为ComboBox 5、设置列类型为Button和Link 实现效果如下: 1、绑定数据源 首先设置dataGridView1.AutoGe 阅读全文

posted @ 2022-10-30 08:02 hanzq_go 阅读(3940) 评论(0) 推荐(0) 编辑

2022年10月28日

线程暂停

摘要: 如何暂停一个线程 实现一个需求,在上位机项目中执行一直都PLC数据和将PLC数据写入数据的操作。当按下按钮时暂停读写操作 原理:开两个线程,每个线程执行一个死循环,在循环体内一直读PLC数据和写入数据库操作 方法一:通过控制flag来控制线程的暂停 using System; using Syste 阅读全文

posted @ 2022-10-28 12:22 hanzq_go 阅读(156) 评论(0) 推荐(0) 编辑

2022年10月25日

多线程应用——双色球

摘要: 通过多线程实现双色球选号, 要求:1、红球从01到33不能有重复;2、蓝球从1到16 效果如下: 难点: 1、多线程实现 2、跨线程修改UI 3、线程安全(红球不能有重复) 4、取消线程 5、线程取消导致的死锁 代码如下: using System; using System.Collections 阅读全文

posted @ 2022-10-25 22:30 hanzq_go 阅读(97) 评论(0) 推荐(0) 编辑

导航