是不是这样做呀:
在CLOSE事件中:
Form1.free;
Form1:=nil;

解决方案 »

  1.   

    在事件中判断Form是否nil 是 不做下一步
      

  2.   

    把你的代码简化,贴出来,说不定问题不在CLOSE   这里
      

  3.   

    在FORM的CLOSE事件中写
     ACTIION:=CAFREE;
      

  4.   

    sorry
    我的意思是你单步运行看看
      

  5.   

    程序是调试出来的。你调试看看。要不你把错误提示贴出来看看。你这样问大伙也没好办法帮你。delphi不错的。
      

  6.   

    还是没解决,我是用的单步,Form1.free;  Form1:=nil; 执行以后,跳到了form1.TreeViewChange事件去了,但程序不可能找到form1了,更不可能找到这个treeview了
    所以报地址错误
      

  7.   

    这个问题一般很难,差不多就是内存分配错误!你有没有SetLength()?
      

  8.   

    看看OnCloseQuery事件有没有代码?
      

  9.   

    不要在form1的OnClose事件里写
      form1.free;
      form1 := nil;改为:
    在form1的OnClose事件里写
      Action := caFree;
    在form1的OnDestroy事件里写
      form1 := nil;
      

  10.   

    在TreeViewChange事件中判断NODE是否为nil,若是则直接exit。
    我以前在ListView的OnSelectItem事件中也碰到过类似问题,在窗体Free时也触发了OnSelectItem事件。
      

  11.   

    我的另一个问题:
    http://www.csdn.net/expert/topic/918/918975.xml?temp=.7106897
    1,请各位相信我不是初学的人,各位提的都时程序员必备的基本知识,请说些特别的。
    2,上面的连接是我遇到的第二个问题,在formclosequery事件中判断是否要保存
    结构化存储文件,然后进入close事件,一切正常,到frm1:=nil时跳到了,改变窗体上的treeview状态的代码上
    3,程序代码太多,是产品,不太好贴出来,定义了很多公用的类合方法,dll,处理也很多,贴出来搞清关系也挺繁的,如果有人觉得有必要,我再贴出一些代码。
      

  12.   

    bobfang(匆匆过客) 
    我想搞清楚原因,我们可谓同相病连了,
    其实,程序做多了,delphi的一些bug就显露出来了,不光是borland
    microsoft的结构化存储文件的属性STGM_SHARE_DENY_NONE根本就没有用
    设了等于白设,还是不能共享访问。bobfang(匆匆过客),请允许我晚一些结账,让更多的的人参与,
    还有,请各位关注我的另一个问题 
    http://www.csdn.net/expert/topic/918/918975.xml?temp=.7106897
      

  13.   

    如果是模态,可以这样
    form2.showmodal();
    form2.free;
    否则
    在form2.onclose
    Active := caFree ;