大家帮我看看这个VB程序谢谢~

来源:百度知道 编辑:UC知道 时间:2024/05/22 13:08:48
想做个VB的直线插补+延时显示程序,不过刚学不太行...大家帮帮忙,谢谢大家!
以下是自己写的程序:
Private Sub Timer1_Timer()
Me.Scale (Line1.X1, Me.Height)-(Me.Width, Line1.Y1)
Dim c As Single
Line1.Visible = True
x = 0
y = 0
c = X2 * y - x * Y2
Do Until x >= X2 And y >= Y2
If c >= 0 Then x = x + 1:
Line -Step(x, 0)
Else
y = y + 1:
Line -Step(0, y)
End If
c = X2 * y - x * Y2
Loop
Timer1.Enabled = False
End Sub

错误是ELSE没有IF...不过我看了看没少IF...
还有直线的初始属性是不是要设置成FALSE的?
谢谢大家

'可以了:
Private Sub Timer1_Timer()
Me.Scale (Line1.X1, Me.Height)-(Me.Width, Line1.Y1)
Dim c As Single
Line1.Visible = True
x = 0
y = 0
c = X2 * y - x * Y2
Do Until x >= X2 And y >= Y2
If c >= 0 Then '你这里搞错了
x = x + 1:
Line -Step(x, 0)
Else
y = y + 1:
Line -Step(0, y)
End If
c = X2 * y - x * Y2
Loop
Timer1.Enabled = False
End Sub

If c >= 0 Then x = x + 1:

楼主请看这句代码

如果If XX Then XXX写在一行的话,那么可以不使用End If来结束,VB会认为这个If语句已经结束,也就是后面有个隐含的End If
既然前面的If语句已经结束,那么后面的Else当然就缺少If了啊

不知道