Option  Explicit  
Private  mintChildWinCount  As  Integer  '记录子窗体个数  
 
Const  strzl  =  "小区住户资料录入"  
Const  strjl  =  "计量仪表资料录入"  
Const  strgl  =  "物业管理公司资料录入"  
 
Public  colInfo  As  Collection  
 
Public  Sub  JB_initialize()  
       Set  colInfo  =  New  Collection  
       colInfo.Add  strzl  
       colInfo.Add  strjl  
       colInfo.Add  strgl  
End  Sub  
 
Private  Sub  MDIForm_Load()  
 treMenu.ImageList  =  ilsTreeView  
End  Sub  
 
Private  Sub  MDIForm_Initialize()  
       Dim  i  As  Long  
       Dim  mNode  As  Node  
       Dim  childNode  As  Node  
       Dim  lngIndex  As  Long  
         
       Set  mNode  =  treMenu.Nodes.Add(,  ,  "root",  "小区物业管理系统")  
       mNode.Image  =  1  
       mNode.Expanded  =  True  
         
       If  frmMainMDI.ActiveForm  Is  Nothing  Then  
               DQ.Enabled  =  False  
               SY.Enabled  =  False  
       Else  
               DQ.Enabled  =  True  
               SY.Enabled  =  True  
       End  If  
         
     Set  mNode  =  treMenu.Nodes.Add(1,  tvwChild,  "JB",  "数据录入")  
     mNode.Image  =  2  
     mNode.SelectedImage  =  3  
     lngIndex  =  mNode.Index  
       
     For  i  =  1  To  colInfo.Count  
           Set  mNode  =  treMenu.Nodes.Add(lngIndex,  tvwChild,  ,  colInfo(i))  
           mNode.Image  =  2  
           mNode.SelectedImage  =  3  
     Next  i  
End  Sub  
 
结果在这一行    For  i  =  1  To  colInfo.Count  报错。原因未明  
请大家指导!~~~~

解决方案 »

  1.   

    不写Initialize事件里写LOAD事件里就可以了~
      

  2.   

    JB_initialize()  是什么函数试一下这样:
    if not colinfo is nothing then
     For  i  =  1  To  colInfo.Count  
      ......
     Next  i  
    endif
      

  3.   

    引用colInfo之前未调用JB_initialize() 过程,导致了 colInfo is nothing
    一个nothing的引用,可能有Count属性吗?建议楼主在for循环之前,插入 call JB_initialize 语句