预览后报错!!(50分)

  • 主题发起人 主题发起人 wgj
  • 开始时间 开始时间
W

wgj

Unregistered / Unconfirmed
GUEST, unregistred user!
我在一个MDI程序中新建一个FORM11用于预览,在另一个CHILD窗体的一个按钮事件中有如下代码:
APPLICATION.CreateForm(TFORM11,FORM11);
FROM11.QuickRep1.Preview;
另有:
procedure TForm11.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
action:=cafree;
end;

这样的用法是我在下载的DEMO中看到的,但是那个DEMO程序能正常运行,而我在关闭预览
窗体时就会报错:
Access violation at address 004039BE in modult 'project1'.
Read of address FFFFFFD0.
请高手回答,不胜感激!!
 
procedure TForm11.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
action:=cafree;
form11.free;
end;
 
我试了一下,还是不行,提示错误从原来的地址变成:
Access violation at address 00000000 in modult 'project1'.
Read of address 00000000.
 
你可以不用FORM
直接CREATE QR啊
 
造成这个问题是因为你多次释放form11
你可以把第一段代码改成
APPLICATION.CreateForm(TFORM11,FORM11);
FROM11.QuickRep1.Preview;
FROM11.release;
然后把TForm11.FormClose的代码去掉就OK了
 
多人接受答案了。
 
后退
顶部