带有 Delphi 2006 的 Fastreport v4
我们需要将打印机对话框(选择打印机对话框)作为标准的窗口对话框。
我们应该怎么做?
(我们需要它看起来“正确”,我们不想记录或支持快速报告对话框中的功能)
带有 Delphi 2006 的 Fastreport v4
我们需要将打印机对话框(选择打印机对话框)作为标准的窗口对话框。
我们应该怎么做?
(我们需要它看起来“正确”,我们不想记录或支持快速报告对话框中的功能)
将 frxReport.PrintOptions.ShowDialog 设置为 false 并调用您自己的对话框。
uses Printers;
Procedure PrintWithDialog(frxReport:TFrxReport ; PrintDialog:TCommonDialog ;const ReportName:String);
begin
frxReport.LoadFromFile(ReportName);
if PrintDialog.Execute then
begin
frxReport.PrintOptions.Printer := Printer.Printers[Printer.PrinterIndex];
frxReport.PrintOptions.Copies := Printer.Copies;
// other settings
frxReport.PrintOptions.ShowDialog := false;
frxReport.PrepareReport;
frxReport.Print;
end;
end;
Procedure TForm3.Button1Click(Sender: TObject);
begin
PrintWithDialog(frxReport1,PrintDialog1,'C:\path\Report.Fr3');
// OR
PrintWithDialog(frxReport1,PrinterSetupDialog1,'C:\path\Report.Fr3');
end;