请教,如何在某窗体Destroy后执行一段代码!?

解决方案 »

  1.   

    问题不清晰...是不是说form1 调用 form2 ,form2 destory . 此时,form2 的句柄都没了,不可能调用form2
    你可以考虑在form2的onclose, ondestory中写代码我觉得你要的应该是这样的.
    在form1 中有: (把全局变量form2删除)var
      Form2: TForm2;
    begin
      Form2 := TForm2.Create(Application);
      try
        if Form2.ShowModal = mrOK then
        begin
          edit1.text := form2.edit1.text;// 加代码....
        end;
      Finally
        SortForm.free;
      end;
    end;
      

  2.   

    上面有点问题
    把sortForm.free 换成 form2.free
      

  3.   

    主要是我想在调用一个DLL之后,回头在此DLL不再使用之后,将此DLL释放,可我只能知道当窗体被释放之时,此DLL才真正不被使用!也就是在窗体被释放之后释放DLL!
      

  4.   

    在窗口释放写代码释放DLL不就行了吗?
      

  5.   

    不用自动调用dll的方法.先用LoadLibary载入,再用FreeLibary释放.会有这个作用.
      

  6.   

    窗体是从DLL中载入窗体类的实例,我是想在这个实例窗体关闭后释放此DLL,而在OnClose中FreeLibrary发生异常!
      

  7.   

    在窗体的ondestroy事件中发送通知给主窗体,比如用sendmessage发送自定义消息。
    然后在主窗体中释放,FreeLibrary。释放之前可能需要等待一点时间。
      

  8.   

    覆盖其析构函数,在inherited Destroy;后接上你的代码即可
      

  9.   

    覆盖其析构函数,在inherited Destroy"前"接上你的代码