[VB6 ] if else的問題

看板Visual_Basic作者 (gogogo)時間17年前 (2008/06/20 18:21), 編輯推噓0(005)
留言5則, 3人參與, 最新討論串1/1
小弟新手要寫VB程式 可是發現一個小問題 但是很嚴重囧 小弟的車子有超音波感測器三個 分別為左,前,右 val(txtLeft.Text)代表的是左邊超音波sensor的值(數字) 小弟寫了一個再簡單不過的小程式 if val(txtLeft.Text)<50 Then '如果左邊距離小於50cm WirRobotSDK1.DcMotorPwmNonTimeCtrAll(23000,3000) '車輪左快於右 End if if val(txtLeft.Text)>50 Then '如果左邊距離大於50cm WirRobotSDK1.DcMotorPwmNonTimeCtrAll(3000,23000) '車輪右快於左 End if 執行以後 一開始小弟把它放在靠左邊的牆邊 這時小於50公分 很自然 開始車輪左快於右(車往右方移動) 3秒之後 車已經離左邊的牆大於50公分了 顯示出來的左sensor也是大於50公分 VB卻沒有執行第二個程式 右快於左(車往左方移動) 也就是VB只讀第一段程式 卻不讀第二段程式 囧 小弟也試過 if val(txtLeft.Text)<50 Then '如果左邊距離小於50cm WirRobotSDK1.DcMotorPwmNonTimeCtrAll(23000,3000) '車輪左快於右 Elseif val(txtLeft.Text)>50 Then '如果左邊距離大於50cm WirRobotSDK1.DcMotorPwmNonTimeCtrAll(3000,23000) '車輪右快於左 End if VB一樣不讀第二段else的部分 不管怎樣就是只讀第一段 小弟實在找不出原因 懇請各位前輩解惑 thanks! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.121.130.185

06/20 20:46, , 1F
看起來像是這個Sub只執行了一次……@@
06/20 20:46, 1F

06/20 20:47, , 2F
把這段code放在Timer裡,Interval設1000呢?
06/20 20:47, 2F

06/20 20:47, , 3F
或是看看WirRobotSDK1有沒有什麼觸發事件可以用。
06/20 20:47, 3F

06/21 11:45, , 4F
果然只有讀一次 謝謝Mr提點 感恩
06/21 11:45, 4F

06/25 07:31, , 5F
也可以用Do...DoEvents...Loop
06/25 07:31, 5F
文章代碼(AID): #18MuIQ9s (Visual_Basic)