根据我单步调试,发现是没有检测到控件数组里的控件个数,也就是控件数组的个数为零,但是控件数组是存在的。
我的程序里有三个控件数组text1、label1和label2第一次释放所有的控件都能够成功,但是第二次的时候,text1和label1是可以成功释放的,而label2却不能够释放。发现是如下的函数返回label2的数组个数为0。
  '判断该控件数组里有多少个控件。
Public Function ExitControlNum(ByVal control As Object) As Integer
    Dim Lab As Object
    Dim num As Integer
    num = 0
    For Each Lab In control
       If Lab.Index = num Then
          num = num + 1
       Else
          Exit For
       End If
    Next
    ExitControlNum = num - 1
End Function请各位帮忙!!!!急用!!!在在线等待!!!!!

解决方案 »

  1.   

    text1和label1是可以成功释放的,而label2却不能够释放那么label1和label2的释放有不同吗?测试了一下,没有出现你说的问题
    ExitControlNum Label1
      

  2.   

    没有什么不同的,不知道为什么,用上面的函数不能正确的返回label2控件数组的个数,它总是返回为零。
      

  3.   

    直接用.
    MSGBOX  Label1.Count
    不是更好吗?你的代码如果中间存在一个空位,例如:LABEL1的下标是:0,1,2,3,4,5可以顺利检测,但当是:1,2,4,5.即中间的3没有时,则返回是0.
      

  4.   

    TO  MSTOP(陈建华) 此函数存在问题,如果中间某个控件已经释放,它只能返回已经释放的控件的infex-1,而不是0。
    谢谢各位老大的关注!!!!!
      

  5.   

    此函数存在问题,如果中间某个控件已经释放,它只能返回已经释放的控件的infex-1,
    '--------------------------------
    它只是返回控件的个数....(我说了也白说,这是VB的人都知道)
    :)