13 Stimmen

Lazarus: Drucken mit Dokumentname

Frage von Gast | 21.11.2013 um 11:44

Ich habe heute meine erste Seite mit einem von mir geschriebenen Lazarus Programm ausgedruckt. Das funktioniert alles besser als ich dachte, jedoch stört mich eine Kleinigkeit.

Wenn man bei Windows unten in der Taskbar auf das Drucker-Symbol klickt, öffnet sich ja ein Fenster mit der Warteschlange aller zu druckenden Dokumente.

Normalerweise steht hier in der Spalte "Dokumentname" der Titel des Drucks. Leider wird dieser Titel von Lazarus offenbar nicht an das System übergeben, jedenfalls bleibt die Zeile an dieser Stelle leer.

Mein Code sieht bislang folgendermaßen aus:

Printer.BeginDoc;
Printer.Title := 'Mein erster Druck';
Printer.Canvas.Font.Name := 'Courier New';
Printer.Canvas.Font.Size := 10;
Printer.Canvas.Font.Color := clBlack; 
Printer.Canvas.TextOut(100, 100, 'TEST');
Printer.EndDoc;

Ich habe es sowohl mit der Eigenschaft "Title" als auch mit "FileName" probiert, einem Dokumentnamen festzulegen, beides zündet nicht.

Mache ich etwas falsch oder ist das ein Bug?

AntwortenPositivNegativ
2Beste Antwort2 Stimmen

Du bist ganz nah an der Lösung. Du musst nur den "Title" vor dem "BeginDoc" setzen.

Also zum Beispiel so:

Printer.Title := 'Mein erster Druck';
Printer.BeginDoc;
Printer.Canvas.Font.Name := 'Courier New';
Printer.Canvas.Font.Size := 10;
Printer.Canvas.Font.Color := clBlack; 
Printer.Canvas.TextOut(100, 100, 'TEST');
Printer.EndDoc;

Zum Zeitpunkt vom BeginDoc hat der Druck quasi schon begonnen, da ist es zu spät, den Namen zu setzen. Der Name muss immer vor dem BeginDoc bereits gesetzt sein.
22.11.2013 um 17:24

AntwortenPositiv Negativ
Antworten

Ähnliche Themen

Delphi: Systemweiter HotKey

Tutorial | 3 Kommentare

Wichtiger Hinweis

Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.

Jetzt mitmachen

Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.