关于VB中MSComm控件的OnComm事件的困惑?
'接收反馈信息PrivateSubMSComm1_OnComm()SelectCaseMSComm1.CommEvent'事件CasecomEvCD'CD线的状态发生变化...
'接收反馈信息
Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
' 事件
Case comEvCD ' CD 线的状态发生变化.
Case comEvCTS ' CTS 线的状态发生变化.
Case comEvDSR ' DSR 线的状态发生变化.
Case comEvRing ' Ring Indicator 变化.
Case comEvReceive ' 收到 RThreshold # of
Dim s As String, s2 As String
s = MSComm1.Input
s2 = Trim(s)
If Mid(s2, 1, 1) = Chr(170) Then
s2 = Mid(s2, 2)
End If
Text4.Text = Text4.Text + s2
Case comEvSend ' 传输缓冲区有 Sthreshold 个字符 '
End Select
End Sub
知道的能否将以上代码详细解释以下,及OnComm事件的目的和作用,以及Chr(170) 的含义?
If Mid(s2, 1, 1) = Chr(170) Then
s2 = Mid(s2, 2)
还有上面这句是什么作用?
谢谢各位好心人! 展开
Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
' 事件
Case comEvCD ' CD 线的状态发生变化.
Case comEvCTS ' CTS 线的状态发生变化.
Case comEvDSR ' DSR 线的状态发生变化.
Case comEvRing ' Ring Indicator 变化.
Case comEvReceive ' 收到 RThreshold # of
Dim s As String, s2 As String
s = MSComm1.Input
s2 = Trim(s)
If Mid(s2, 1, 1) = Chr(170) Then
s2 = Mid(s2, 2)
End If
Text4.Text = Text4.Text + s2
Case comEvSend ' 传输缓冲区有 Sthreshold 个字符 '
End Select
End Sub
知道的能否将以上代码详细解释以下,及OnComm事件的目的和作用,以及Chr(170) 的含义?
If Mid(s2, 1, 1) = Chr(170) Then
s2 = Mid(s2, 2)
还有上面这句是什么作用?
谢谢各位好心人! 展开
1个回答
展开全部
MSComm,它提供了一个 事件OnComm,该事件可以截取串口的任何消息,转入事件处理程序。OnComm事件是唯 一的,OnComm可以捕获通信时发生的串口事件和错误信息,当有串口事件或错误发生时,VB会立刻触发一个OnComm事件,程序就会自动转入 OnComm事件处理程序中。CommEvent属性是OnComm事件的指示器,该属性在设计时不能使用,在程序运行时为只读,CommEvent 属性存有最近的 事件或错误的数值代码,可以在程序中随时读取CommEvent 属性值来了解通信的状况,OnComm事件是和CommEvent属性密切相关、一起使用,当任 何一个OnComm 事件或错误发生时,都会使得CommEvent属性值改变,在OnComm事件处理过程中,可以通过判断CommEvent属性值,对于不同的属性 值转入不同的事件处理过程,一般采用的办法是SELECT CASE.......END SELECT。
Chr(170)?这样的ASCII值我没见过。
If Mid(s2, 1, 1) = Chr(170) Then
s2 = Mid(s2, 2)
就是说,如果s2的第一个字符为Chr(170),那么s2等于从s2中删除左边第一个字符
Chr(170)?这样的ASCII值我没见过。
If Mid(s2, 1, 1) = Chr(170) Then
s2 = Mid(s2, 2)
就是说,如果s2的第一个字符为Chr(170),那么s2等于从s2中删除左边第一个字符
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询