![]() |
Delphi-Version: XE
PrinterIndex gesetzt... trotzdem Standarddrucker
Moin... :hi:
Eher durch Zufall bin ich auf ein Problem gestoßen, weil ich mir nicht vorstellen konnte daß da etwas nicht funktionieren sollte.
Delphi-Quellcode:
FPrinterID ist richtig gesetzt entsprechend einer Auswahl aus dem Drucker Dialog in den Einstellungen. Trotzdem kommen alle Ausdrucke auf dem Standarddrucker an :wiejetzt:
procedure TdBK_Print.Print(Report: TfrxReport; Design, Dialog: Boolean);
begin if Report.PrepareReport(True) then begin Printer.PrinterIndex:= FPrinterID; Report.PrintOptions.ShowDialog:= Dialog; if Design then Report.DesignReport(True) else Report.Print; end; end; Was unter 2007 noch problemlos funktionierte geht unter XE nicht mehr ? Wo ist der Trick ? Danke für Tipps... :hi: |
AW: PrinterIndex gesetzt... trotzdem Standarddrucker
Ich kenne mich nicht im Detail mit dem Reportdesigner aus, aber evtl. setzt ein
Delphi-Quellcode:
.
Report.PrintOptions.ShowDialog:= Dialog;
auch den Drucker zurück, wenn Dialog = False. Ich würde mal versuchen, bei Dialog = False den PrinterIndex nochmal nach setzen der Property ShowDialog zuzuweisen. |
AW: PrinterIndex gesetzt... trotzdem Standarddrucker
Hallo Satty67...
ein Versuch war es Wert... Ich habe die 2 Zeilen auch vertauscht. Leider ist kein positives Ergebnis zu verzeichnen. :( Zum Zeitpunkt
Delphi-Quellcode:
ist der Inhalt von Printer.PrinterIndex so wie er sein soll :gruebel:
Report.Print
Danke |
AW: PrinterIndex gesetzt... trotzdem Standarddrucker
Ich kenn mich mit den Reports auch nicht gut aus, aber kann es sein dass du den Drucker so setzen musst:
Delphi-Quellcode:
Report.PrintOptions.Printer := FPrintId;
Mfg. pHL |
AW: PrinterIndex gesetzt... trotzdem Standarddrucker
Danke erst mal...
Printer in PrintOptions ist ein String. Wenn ich mir den String über die ID aus Printer hole funktioniert das ganze...8-)
Delphi-Quellcode:
Das erklärt aber immer noch nicht weshalb obiger Code unter 2007 via PrinterIndex funktioniert und unter XE nicht mehr... :gruebel:
procedure TdBK_Print.Print(Report: TfrxReport; Design, Dialog: Boolean);
begin if Report.PrepareReport(True) then begin Report.PrintOptions.ShowDialog:= Dialog; Report.PrintOptions.Printer:= Printer.Printers[FPrinterID]; //Printer.PrinterIndex:= FPrinterID; if Design then Report.DesignReport(True) else Report.Print; end; end; |
AW: PrinterIndex gesetzt... trotzdem Standarddrucker
Zitat:
|
AW: PrinterIndex gesetzt... trotzdem Standarddrucker
Zitat:
Evtl. mal mit expliziter Konvertierung experimentieren. (bzw. wenn ich das richtig lese, ist es schon gelöst?) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz