vb 下标越界 怎么办啊?跪求各位高手,急急急!!!!!!!!!

[复制链接]
查看11 | 回复1 | 2011-6-6 11:44:36 | 显示全部楼层 |阅读模式
If k - 2 >= 0 Then '如果有道岔Sr(i)反位信息

If DOF(k - 1) = Sr(i) Then '删除道岔Sr(i)反位信息

DOF(k - 1) = "No"

DOF(k - 2) = "No"

k = k - 2

End If

End If

Sr(i) = "No" '删除Sr(i)节点

i = i - 1

If i < 0 Then '判断Sr(i)空否

MsgBox "进路选不出" 'Sr(i)为空,进路搜索错误退出搜索

GoTo 结束

Else '若Sr(i)不为空

Set vNewObject = CallByName(form1, Sr(i), VbGet)

If TypeOf vNewObject Is DC Then '判断Sr(i)是不是道岔,若是则继续

If vNewObject.DXDC = True Then '判断Sr(i)是不是对向道岔,若是则继续

If pFstSPNode = i Then '若当前节点等于pFstSPNode

CrossingLine = "No" '清除全局变量CrossingLine

End If

If (Sc(j) = vNewObject.Nz Or Sc(j) = vNewObject.Nw) Then '判断Sc(j)是不是Sr(i)的后继节点Nz或Nw,若是则继续

If Sc(j) = vNewObject.Nw Then 'Sc(j)是Sr(i)的后继节点Nw

DOF(k) = Sr(i) '道岔Sr(i)反位

k = k + 1

DOF(k) = Sc(j) '道岔Sc(j)反位

k = k + 1
End If

i = i + 1

GoTo 标记二 '跳转到标记二继续搜索

End If

End If

GoTo 标记三 '跳转到标记三继续删除节点

Else '若都不是

GoTo 标记三 '跳转到标记三继续删除节点

End If

回复

使用道具 举报

千问 | 2011-6-6 11:44:36 | 显示全部楼层
下标越界并不重要,重要的事这个程序如同千疮百孔的房子,打个喷嚏都能震掉块砖头,谁都敬而远之。即使交付使用,我想几个月后,当你需要对这个程序升级或者维护时,自己也会搞不清哪与哪的关系,往往调好了这里,却无意中弄坏了那里,大量的时间精力消耗在这些不必要的BUG调试中,给用户也带来了很大的烦恼,最后您不得不采用的办法是:重新开发!...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行