function Export2RTF(AReport: TfrxReport): boolean; var SXD: TSaveDialog; frxRTFExport1: TfrxRTFExport; begin Result:= false; SXD:= TSaveDialog.Create(nil); try SXD.DefaultExt:= 'rtf'; SXD.Filter:= 'rtf|*.rtf'; if SXD.Execute then begin frxRTFExport1:= TfrxRTFExport.Create(nil); frxRTFExport1.ShowDialog:= false; frxRTFExport1.FileName:= SXD.FileName; if FileExists(SXD.FileName) then begin if Application.MessageBox('文件已存在,覆盖吗?','提示',292) = 6 then begin DeleteFile(SXD.FileName); AReport.Export(frxRTFExport1); Result:= true; end; end else begin AReport.Export(frxRTFExport1); Result:= true; end; if Result then if Application.MessageBox('已成功保存,是否现在打开?','提示',292) = 6 then ShellExecute(0,'open',pansichar(SXD.FileName),nil,nil,sw_shownormal); frxRTFExport1.Free; end; except on e:Exception do Showmessage(e.Message); end; SXD.Free; end; //调用frxReport1.LoadFromFile('test.fr3'); //... Export2RTF(frxReport1);
frxReport1.LoadFromFile('test.fr3');
frxRTFExport1.FileName:= 'a.rtf'; // 这里你自己整个全名进去,如 c:\a.rtf
frxReport1.Export(frxRTFExport1);
frxReport1.LoadFromFile('test.fr3');
frxRTFExport1.ShowDialog:= false; // 加这句
frxRTFExport1.FileName:= 'a.rtf';
frxReport1.Export(frxRTFExport1);
function Export2RTF(AReport: TfrxReport): boolean;
var
SXD: TSaveDialog;
frxRTFExport1: TfrxRTFExport;
begin
Result:= false;
SXD:= TSaveDialog.Create(nil);
try
SXD.DefaultExt:= 'rtf';
SXD.Filter:= 'rtf|*.rtf';
if SXD.Execute then
begin
frxRTFExport1:= TfrxRTFExport.Create(nil);
frxRTFExport1.ShowDialog:= false;
frxRTFExport1.FileName:= SXD.FileName; if FileExists(SXD.FileName) then
begin
if Application.MessageBox('文件已存在,覆盖吗?','提示',292) = 6 then
begin
DeleteFile(SXD.FileName);
AReport.Export(frxRTFExport1);
Result:= true;
end;
end else
begin
AReport.Export(frxRTFExport1);
Result:= true;
end;
if Result then
if Application.MessageBox('已成功保存,是否现在打开?','提示',292) = 6 then
ShellExecute(0,'open',pansichar(SXD.FileName),nil,nil,sw_shownormal);
frxRTFExport1.Free;
end;
except
on e:Exception do Showmessage(e.Message);
end;
SXD.Free;
end;
//调用frxReport1.LoadFromFile('test.fr3');
//...
Export2RTF(frxReport1);