解决方案 »
- 在程序输入界面中,每打一下回车,光标就自动移动到下一个输入框的功能,怎么实现?
- 请大家帮我看看这段代码??是treeview控件与数据库的操作的问题!!
- 请教一下关于GetWindowRect的问题
- 请教一个学VC以来一直困扰我的问题``
- 我想把MSChart控件繪制的曲線打印到一張A4的紙上﹐請教怎么做呀?...在線等待
- datagrid删除某行时出现的错误, 期待高手的解答.
- 如何捕获键盘的按键?
- 程序不能正常关闭,请高手指点。
- 判断鼠标在屏幕上的位置?(自身程序外)
- vb6.0获取系统主音量
- vb datagrid 行不能完全遍历 在线等 大神速来~~~3Q
- 求教奇葩问题,SSTab控件不能正常显示!
Dim bufInput As Viarant
Dim strLine As String
Dim strItem() As String
Do
If comLaser.InBufferCount > 0 Then
RecData = ""
Do
If comLaser.InBufferCount >= 27 Then '如果接收缓冲区中存在完整数据记录
bufInput = comLaser.Input '将接收缓冲区的数据(字符)赋值给变量bufInput
strLine = Replace(StrConv(bufInput, vbUnicode), vbCrlf, "")
strItem = Split(strLine, ",")
Exit Do
End If
Loop
strItem(1) 和 strItem(3) 中分别是你所要的数字。
RecData是 "P00,24.23650,P05,00.12340" + CR + "CL"
楼主的Mid用法有误:
应该为:
Format(Val(Mid(RecData, 4, 8)), "0.0000")进行外径读取
Format(Val(Mid(RecData, 17 , 8)), "0.0000")进行偏心读取此外建议楼主MsComm控件的RThreshold 属性
设置为28,完整接收后判断后进行数据处理。