大家好:     我有一个很奇怪的问题对我来说!!我做了一个多文档应用程序。在这个多文档应用程序的子窗体中有一个名字是reportform的子窗体,它的上面有一个TQuickRep控件是用来做报表用的。我在reportform 窗体的OnCreate 事件中写了QuickRep1.Preview;我在
reportform 窗体的OnClose 事件中写了action:=cafree;当我创建这个子窗体并运行以后,在我关闭这个窗体是问题就出现了啊???????????????????
它没有关闭穿体而是在主窗体还在运行的情况下QuickRep1成了设计状态时的情形,这是需要在关闭一次子窗体reportform才能完全的关闭。。
  请问那位高手遇到过这样的问题啊? ??????????????????

解决方案 »

  1.   

    在reportform子窗体的OnDestroy事件中加入reportform := nil;
      

  2.   

    insert2003(高级打字员) 你好:还是不行???还有别的办法吗 ???????
      

  3.   

    呵呵
    你不会是在close事件里没写
    close;
    吧!
      

  4.   

    你把
    QuickRep1.Preview
    写在
    OnShow事件里试试!其实,你完全可以将
    QuickRep1.Preview
    写在你的一个按钮(比如说此按钮为“打印”)的OnClick事件里!在窗体创建时将
    QuickRep1.visible := false;
      

  5.   

    这是Onclose事件:
    procedure Treport.FormClose(Sender: TObject; var Action: TCloseAction);
    begin
      action:=cafree;
    end;这是Oncreate 事件:
    procedure Treport.FormCreate(Sender: TObject);
    var
      sc1:string;
    begin
      sc1:= extractfilepath(application.ExeName)+'database';
      baobiao.DatabaseName := sc1;
      baobiao.Active := true;
      QuickRep1.Preview;
    end;请前辈指导
      

  6.   

    我的意思是QuickRep不用再做一个窗体,直接置于你有DBGrid或什么的窗体上,将其visible:= False;要打印时QuickRep1.Preview;
    就行了!