Disabling print buttons during printing
Add a TTimer to the form in qrprev.pas. Set the interval to 2-5 secs.
Amend procedure TQRStandardPreview.PrintClick as shown below, then add the timer
click even also shown below.
procedure TQRStandardPreview.PrintClick(Sender: TObject);
begin
print.Enabled := false;
timer1.Enabled := true;
application.processmessages;
if (QRPrinter.Master = nil) or (QRPrinter.Master is TQRCompositeWinControl) then
QRPrinter.Print
else if TCustomQuickRep(QRPrinter.Master).QRPrinter.Status <> mpBusy then
QRPrinter.Print;
end;
procedure TQRStandardPreview.Timer1Timer(Sender: TObject);
begin
if (TCustomQuickRep(QRPrinter.Master).QRPrinter.Status <> mpBusy) then
begin
Timer1.Enabled := false;
print.Enabled := true;
end;
end;