Console.WriteLine(s.ToString())
s = d(1, 2)'执行委托
Console.WriteLine(s.ToString())
MsgBox("")
End Sub
End Module
vb.net 怎么用事件触发的方式读取串口数据首先:
textbox里没有显示,是因为SerialPort1和TextBox2不是同一线程创建的,需要跨线程操作 。需要用到委托,这样才能显示出来 。
其次:
我觉得用串口的接收数据事件更好一些 。
下面代码供参考:
'----------------------
'串口接收数据事件,其实比用定时器更好,
'触发事件的条件可以自己在form_load中设置ReceivedBytesThreshold属性数值,默认为ReceivedBytesThreshold=1
Private Sub SerialPort1_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived
Dim strRecvData As String = ""
strRecvData = https://www.04ip.com/post/SerialPort1.ReadExisting
Call disPlayComData(strRecvData)
End Sub
Delegate Sub callback(ByVal strT As String) '定义委托
Sub showString(ByVal comdata As String) '显示结果
Me.TextBox1.Text = "结果:"comdata
End Sub
Sub disPlayComData(ByVal strTmp As String) '判定是否为跨线程
If Me.TextBox1.InvokeRequired Then
Dim d As New callback(AddressOf showString)
Me.Invoke(d, New Object() {strTmp})
Else
Me.TextBox1.Text = strTmp
End If
End Sub
关于vb.net串口委托和vb串口接收程序的介绍到此就结束了 , 不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。
推荐阅读
- 手机钉钉直播课怎么发图片,钉钉直播课怎么上传图片
- 手机怎么提供电脑流量数据,手机怎么给电脑流量
- win7如何更改word图标,修改桌面word文档图标
- html5怎么让整个页面居中显示,html网页制作怎么设置居中
- linux挂载命令配置 linux挂载命令怎么理解
- 两千价位吃鸡显卡怎么样,现在吃鸡显卡一般要什么价位
- u8与sap,u8与sap区别
- vb.net大型项目 vbnet datagrid
- jquery获取form参数乱码,jquery form validate