Re: Fastreport und TPrintDialog
Delphi-Quellcode:
dm.PrintDialog.Copies := dm.frxReport.PrintOptions.Copies; dm.PrintDialog.Collate := dm.frxReport.PrintOptions.Collate; IF dm.PrintDialog.Execute then begin dm.frxReport.PrintOptions.Copies := dm.PrintDialog.Copies; dm.frxReport.PrintOptions.Collate := dm.PrintDialog.Collate; //Ladedatei und drucke end; Gedruckr wird aber auf dem Standard drucker obwohl ich einen anderen ausgewählt habe |
Re: Fastreport und TPrintDialog
Zitat:
|
Re: Fastreport und TPrintDialog
Nachtrag was hat den der Code für einen Sinn wenn man normal mit FR druckt kommt doch ein Druckerdialog
|
Re: Fastreport und TPrintDialog
Das ist richtig! Wenn man die Funktion Report.Print aufruf kommt es zu einem Druckdialog! Aber wenn ich eine Druckverwaltung habe mit 100 Dokumenten dann will ich vielleicht alle 100 Druckdokumenten auf einen anderen drucke ausdrucken, weil der Standard Drucker momentan Offline ist. Das soll definitiv per Auswahl eines Drucker gelöst werdem. Das ist die Ausganssituation.
|
Re: Fastreport und TPrintDialog
Hai Karstadt,
in diesem Fall würde ich an einem zentralen Punkt des Programmes (Im Hauptmenü) die Auswahl des Druckers anbiete. Jetzt aber nicht den Standarddrucker von Windows ändern. Das gehört sich nicht für ein Programm sonder mit der Methode .ChangePrinter() von TfrReport den Drucker immer vor dem Ausdruck ändern. |
Re: Fastreport und TPrintDialog
Ich stehe auf dem Schlauch.
Du meinst doch die Komponente TfrxReport und dort soll eine Methode namens ChangePrinter geben? frxReport.habe.ich.aber.nicht warum? |
Re: Fastreport und TPrintDialog
Hai Karstadt,
es wurde wohl einiges in der 3.x geändert. Ich habe mir die jetzt mal schnell installiert und mir dieses Beispiel gebaut:
Delphi-Quellcode:
uses
Printers; procedure TDemoForm.FormCreate(Sender: TObject); var ndx: Integer; begin for ndx := 0 to Printer.Printers.Count - 1 do // Alle installierten Drucker begin ComboBox1.Items.Add(Printer.Printers[ndx]); // in einer ComboBox auflisten end; end; procedure TDemoForm.Button1Click(Sender: TObject); begin with frxReport1 do begin PrintOptions.Printer := ComboBox1.Text; // Als Drucker den aus der ComboBox nehmen. PrintOptions.ShowDialog := FALSE; // Kein Dialog notwendig PrepareReport(); // Vorbereiten Print; // und weg damit end; end; |
Re: Fastreport und TPrintDialog
Danke! Das hat funktioniert SUPER! :-D
|
Re: Fastreport und TPrintDialog
Delphi-Quellcode:
TURBO :) Jetzt muss ich nur rausfinden welche Drucker der standard drucke ist und fertig ;)
cbx_drucker.Items := Printer.Printers;
|
Re: Fastreport und TPrintDialog
Zitat:
Delphi-Quellcode:
begin
ComboBox1.Items := Printer.Printers; ComboBox1.ItemIndex := Printer.PrinterIndex; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz