在程序中新一个窗体然后加入TQuickRep和TQRBand,还有若干TQRShape与TQRLabel就这些了,再加入了一个TQRRichText组件。报表窗体掉用方式如下:
procedure TFormPrint.btnprintClick(Sender: TObject);//打印按钮的单击事件
begin
FormReport:=TFormReport.Create(self);
FormReport.QuickRep1.PreviewModal;
FormRepost:=nil;
end;
procedure TFormPrint.btnCloseClick(Sender: TObject);//关闭按钮的单击事件
begin
Close;
end;在打印窗体中的Close事件中代码如下:
procedure TFormReport.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
当我不用TQRRichText组件时程序一切正常(此时指TFormPrint窗体关闭时候,单击“Close”(btnClose)按钮,因为是TFormPrint是掉用TFormReport的窗体)但是当我加入TQRRichText组件时(可以打印多行并且可自动换行嘛,方便)在关闭TFormPrint窗体时就会出现如下错误:Project Project1.exe raised exception class EOSError with message 'System Error .Code:1400.无效的窗口句柄。' Process stopped .Use Step or Run to continue.以上就为错误消息,在调试时出现的。如果直接运行程序,后果就不说了,程序全部下课了。
procedure TFormPrint.btnprintClick(Sender: TObject);//打印按钮的单击事件
begin
FormReport:=TFormReport.Create(self);
FormReport.QuickRep1.PreviewModal;
FormRepost:=nil;
end;
procedure TFormPrint.btnCloseClick(Sender: TObject);//关闭按钮的单击事件
begin
Close;
end;在打印窗体中的Close事件中代码如下:
procedure TFormReport.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
当我不用TQRRichText组件时程序一切正常(此时指TFormPrint窗体关闭时候,单击“Close”(btnClose)按钮,因为是TFormPrint是掉用TFormReport的窗体)但是当我加入TQRRichText组件时(可以打印多行并且可自动换行嘛,方便)在关闭TFormPrint窗体时就会出现如下错误:Project Project1.exe raised exception class EOSError with message 'System Error .Code:1400.无效的窗口句柄。' Process stopped .Use Step or Run to continue.以上就为错误消息,在调试时出现的。如果直接运行程序,后果就不说了,程序全部下课了。
解决方案 »
- 离职回家休息,来了结贴
- 散分专贴四
- 关于WMI~~~,找sanmaotuo(老冯)......
- 程序关闭后会自动清楚所有的变量吗?
- 怪事:for循环中循环变量值竟然大于边境值
- 100分求TListView全攻略
- 我用以下SQL语句从一个表中查询出记录并写入到另一个表中,同时要写入的还有两个常量,但是查询分析通不过,有谁告诉我错在那里吗?
- 求一个用socket实现ftp上传下载源码
- 请问:在开启打印页时,弹出error creating form: range check error 是什么错误?如何改正?
- 如何用Delphi开发Proxy,急,谢谢
- 用过cxGrid的人来接分
- 一个很讨厌的问题
試下如下:
QRRichText1.Lines.Clear;
Action:=caFree;
不得行,,
还是一样的错误
begin
FormReport:=TFormReport.Create(self);
FormReport.QuickRep1.PreviewModal;
FreeandNil(FormReport);
end;
还是不行,,这下错误出来的更早了,,在关闭报表窗口时就出来错误了。以前是关闭掉用报表窗体的那个窗体(TFormPrint)进才出错,现在更早出来了(TFormReport)。