VB串口问题

来源:百度知道 编辑:UC知道 时间:2024/07/07 18:55:53
Private Sub MSComm1_OnComm()
Dim strSj As String
Select Case Me.MSComm1.CommEvent
if strSj = "123" Then
MSComm1.Output = "345"
end slect
end sub
只要当接收的数据是123 则马上发送345 出去,现在怎么在接受123后 2秒以后发送345出去?不设置定时器!~
strSj = Me.MSComm1.Input

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Private Sub MSComm1_OnComm()
......
If strSj = "123" Then
Sleep 2000
MSComm1.Output = "345"
End If
......
end sub

if strSj = "123" Then
sleep 2000
DoEvents
MSComm1.Output = "345"

end slect 这句话 你打错了 select 少打了个 e

办法1:
用 sleep
办法2:
用 doevents

不设置定时器好像不行吧,程序怎么知道什么时候接收到123哪?编程思路:设时器1秒查看一次接收内容,是123就发345。

if strSj = "123" Then
sleep 2000
DoEvents
MSComm1.Output = "345"