1、开始发送命令: result& = MMC_sendCommand("MN,MA873813"),目的是让仪器运动。
2、接着要获取运动位置(Label17.Caption是显示位置信息): result& = MMC_getPos
Label17.Caption = result& / 145635.5328
3、判断:如果Label17.Caption的信息不变,继续发送1的命令;如果Label17.Caption的值大于0以及Label17.Caption的值不变,停止发送1的命令。如果发送1的命令发送了5次,Label17.Caption的位置信息还是不变,即为0,提示“重启VB”。
4、下步接着干其他的事
2、接着要获取运动位置(Label17.Caption是显示位置信息): result& = MMC_getPos
Label17.Caption = result& / 145635.5328
3、判断:如果Label17.Caption的信息不变,继续发送1的命令;如果Label17.Caption的值大于0以及Label17.Caption的值不变,停止发送1的命令。如果发送1的命令发送了5次,Label17.Caption的位置信息还是不变,即为0,提示“重启VB”。
4、下步接着干其他的事
解决方案 »
- DLL已注册 还是错误“类不支持自动化
- 请问用VB怎么通过短信网关进行短信收发?
- 如何在程序的运行过程中释放CPU?
- 高分请教怎么自动生成控件???高手请进,分不够再加……
- 请问,如何调用一个带返回参数的存储过程(SQLserver)
- VB+ACCESS问题请教
- VB中如何实现打开某类型文件?(请快)
- 在一个打开窗体时,未关闭之前,不能将焦点移到别的窗体.一般的窗体可以用Form1.show vbmodal实现.但在MDI Form中怎么实现呢?
- 80分询问:如何在程序中动态地向datareport内添加控件?
- 在rich textbox中,如何将被选取的内容(包括文字及图片)复制到剪贴板
- 监控其他软件内容的程序,运行几个小时就崩溃了。。。
- 请教:先从数字1-20中任意选出10个数字,再对这10个数字进行分组,每组从中取出4个数字,且每组数字不能完全一样,与数字所在的位置无关……
Dim k1 As Byte
Dim temp As Single
Dim flg As Boolean
Do
result& = MMC_sendCommand("MN,MA873813") '发送命令
result& = MMC_getPos '获取运动位置(Label17.Caption是显示位置信息):
Label17.Caption = result& / 145635.5328 '给Label17.Caption赋值
If Val(Label17.Caption) = 0 Then '如果Label17.Caption的信息不变
i = i + 1 '累计发送次数
If i = 5 Then '不到5次继续发送命令
MsgBox "重启VB" '到了5次
End
End If
ElseIf Val(Label17.Caption) > 0 Then '如果Label17.Caption的值大于0
If Not flg Then
temp = Val(Label17.Caption) '记录第一个值
flg = True
Else
If temp = Val(Label17.Caption) Then '和第二个值比较
Exit Do '没有变化,停止发送1的命令
End If
End If
End If
Loop
End Sub
改成
dim i as integer
我按照你的思路运行,怎么VB就运行不起来呢 !设置断点就是在这里程序跑不过去。程序倒是没有报错!也没有提示我"重启VB"。 Dim zjx As Integer
Dim Temp15 As Single
Dim flg0 As Boolean
Do
DoEvents
result& = MMC_sendCommand("MN,MA873813") '发送到正极限命令
result& = MMC_getPos '获取运动位置(Label17.Caption是显示位置信息):
Label17.Caption = result& / 145635.5328 '给Label17.Caption赋值
If Val(Label17.Caption) = 0 Then '如果Label17.Caption的信息不变
zjx = zjx + 1 '累计发送到正极限命令次数
If zjx = 5 Then '不到5次继续发送到正极限命令
MsgBox "重启VB" '到了5次
End
End If
ElseIf Val(Label17.Caption) > 0 Then '如果Label17.Caption的值大于0
If Not flg0 Then
Temp15 = Val(Label17.Caption) '记录第一个值
flg0 = True
Else
If Temp15 = Val(Label17.Caption) Then '和第二个值比较
Exit Do '没有变化,停止发送到正极限的命令
End If
End If
End If
Loop
会一直发送result& = MMC_sendCommand("MN,MA873813") '发送到正极限命令