Autor Beitrag
Lecram
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Do 01.10.09 18:14 
Hallo wenn ich auf drucken gehe kommt ein Fehler
"Project Project1.exe raised exception dass EPrinter with message 'Printer in Progress'"
Was kann ich dagen machen und wie
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
var
   XDest, YDest, XSrc, YSrc: Integer;
   PWidth, PHeight: integer;
   printer: TPrinter;
begin
   XDest:=50;
   YDest:=50
   XSrc:=0;
   YSrc:=0
   PWidth:=self.Width;
   PHeight:=self.Height;  
   printer.BeginDoc;
   BitBlt(printer.Canvas.handle, XDest, YDest, PWidth, PHeight, self.Canvas.handle, XSrc, YSrc, SRCCOPY);
   printer.EndDoc;
end;


Moderiert von user profile iconNarses: Delphi-Tags hinzugefügt
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19315
Erhaltene Danke: 1747

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Fr 02.10.09 11:35 
Du hast die Variable printer noch einmal lokal deklariert statt die globale Variable zu benutzen, die bereits existiert... :autsch:
user profile iconLecram hat folgendes geschrieben Zum zitierten Posting springen:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
var
   [...]
   printer: TPrinter;
begin
   [...]
end;
Da du printer nie initialisierst, also das Objekt gar nicht existiert, gibt es natürlich einen Fehler.