RAD Studio VCL Reference
ContentsIndex
PreviousUpNext
TPrinter.Aborted Property

Determines if the user aborted the print job.

Pascal
property Aborted: Boolean;
C++
__property Boolean Aborted;

If Aborted is true, the print job was aborted. If it is false, the user did not abort the print job. 

The Abort method sets the Aborted property to true.  

Delphi Examples: 

 

{
The following code displays a dialog box if the print job
was aborted.  This code aborts a print job if the user
presses Esc. Note that you should set KeyPreview to true
to ensure that the OnKeyDown event handler of Form1 is called.
Also notice that the Button1Click routine continues to run
even after the print job has been aborted.
} 

uses Printers;

procedure TForm1.Button1Click(Sender: TObject);
var
  I, X, Y: Integer;
  Memo1 : TMemo;
  r: TRect;
begin
  Memo1 := TMemo.Create(Form1);
  Memo1.Parent := Form1;
  Memo1.Visible := True;
  Memo1.Width := 700;
  if (OpenDialog1.Execute) then
  begin
    Memo1.Lines.LoadFromFile(OpenDialog1.FileName);

    Printer.BeginDoc;
    X := 200;
    Y := 200;
    for I := 0 to 140 do
      if (not Printer.Aborted) then
      begin
        Printer.Canvas.TextOut(X, Y, Memo1.Lines[I]);
        Y := Y + 80;
        if (Y > (Printer.PageHeight - 300)) then
        begin
          Y := 200;
          Printer.NewPage;
          Sleep(1000);  // to give you time to abort!
        end;
      end;
    if (not Printer.Aborted) then Printer.EndDoc;
  end;
  if Printer.Aborted then
    MessageDlg('The print job did not finish printing', mtInformation, [mbOK], 0);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
   KeyPreview := True;
end;

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if (Key=VK_ESCAPE) and Printer.Printing then
  begin
  Printer.Abort;
//  MessageDlg('Printing aborted', mtInformation, [mbOK],0);
  end;
end;

 

Copyright(C) 2008 CodeGear(TM). All Rights Reserved.
What do you think about this topic? Send feedback!