AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme mit Druckeransteuerung

Ein Thema von stonimahoni · begonnen am 14. Dez 2005 · letzter Beitrag vom 14. Dez 2005
Antwort Antwort
stonimahoni

Registriert seit: 12. Okt 2004
146 Beiträge
 
Delphi 7 Professional
 
#1

Probleme mit Druckeransteuerung

  Alt 14. Dez 2005, 09:52
Hi Leute....


ich stehe mal wieder vor einem kleinen Problemchen :/


Folgendes :
Ich drucke aus meiner Anwendung heraus und nutze dazu folgenden KURZEN ansatz :

Delphi-Quellcode:
      if PrintAuftrag.Execute then
      begin
           .
           .
           .
           .
      end;

Soweit so gut....ich bekomm die Druckerauswahl von Windows angezeigt und kann da auch schön Drucker nach belieben aussuchen, allerdings wird IMMER auf dem in Windows hinterlegten Standartdrucker gedruckt - WIESO ???
Kann ich das irgendwie ändern, OHNE immer vorher den Standartdrucker händig zu ändern ???

Vielen Dank.


MFG


Carsten
Carsten
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#2

Re: Probleme mit Druckeransteuerung

  Alt 14. Dez 2005, 11:09
Hi,
nun ja, wie sieht denn dein eigentliches Drucken aus? Ohne ist es recht schwer zu sagen was schief läuft, oder?

Gruß Der Unwissende
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#3

Re: Probleme mit Druckeransteuerung

  Alt 14. Dez 2005, 11:16
Aber noch ganz kurz zum Prinzip zum Drucken.
Am einfachsten machst du es dir, wenn du eine Methode erzeugst, die für die eigentliche Ausgabe zuständig ist (also was genau angezeigt werden soll). Die bekommt als Argument halt einen TCanvas und zeichnet dort etwas rauf.
Delphi-Quellcode:
procedure printSomething(const Canvas : TCanvas);
begin
  if assigned(Canvas) then
    begin
      // Zeichne irgendwas
    end;
end;
Dann hast du an einer anderen Stelle den Aufruf des Druckerdialogs und der sieht dann so aus
Delphi-Quellcode:
procedure printOnPrinter;
begin
  if self.PrinterDialog1.Execute then
    begin
      Printer.BeginDoc;
      print(Printer.Canvas);
      Printer.EndDoc;
    end;
end;
Vielleicht siehst du hier schon den Vorteil dieser rangehensweise (kenne deine ja nicht), aber du kannst so auch leicht eine Vorschau erstellen. Statt einem PrinterCanvas übergibst du dort dann halt einen Bitmap-Canvas und zeigst das entsprechende Bitmap an.
Bei mir klappt das so jedenfalls mit jedem beliebigen Drucker.

Gruß Der Unwissende
  Mit Zitat antworten Zitat
stonimahoni

Registriert seit: 12. Okt 2004
146 Beiträge
 
Delphi 7 Professional
 
#4

Re: Probleme mit Druckeransteuerung

  Alt 14. Dez 2005, 11:20
HI...


also ich rufe nach dem printauftrag.execute ein formular im hintergrund auf auf dem ich mit quickreport gearbeitet habe und gebe dann den print befehl.

nun habe ich noch folgendes gefunden und bei mir eingebaut :
Delphi-Quellcode:
      if PrintAuftrag.Execute then
      begin
       DruckerName := Printer.Printers [Printer.PrinterIndex];
       showmessage ('*'+DruckerName+'*');
       AssignFile (f, 'DruckerName');
       rewrite(f);
       showmessage ('aktiver Drucker ab jetzt : '+Printer.Printers [Printer.PrinterIndex]);
       .
       .
       .
das geht aber immer noch nicht, obwohl mir der richtige drucker dann bei showmessage angezeigt wird.
es kommt immer noch auf dem standarddrucker raus

ich hab da noch was gelesen von wegen windows bräuchte länger um die änderung zu registrieren - kann das sein ? und wenn ja, bin ich auf dem richtigen wege oder muss ich noch was hinzufügen ?

*verzweifel*


vielen dank

mfg


Carsten
Carsten
  Mit Zitat antworten Zitat
Mattin

Registriert seit: 4. Sep 2003
72 Beiträge
 
Delphi 7 Professional
 
#5

Re: Probleme mit Druckeransteuerung

  Alt 14. Dez 2005, 11:38
Hi,

Du musst dem Quickreport sagen auf wechlen Drucker der Ausdruck
erfolgen soll.

Delphi-Quellcode:
 QuickRep1.PrinterSettings.PrinterIndex := MeinDrucker;
 QuickRep1.PrinterSettings.Copies := 1;
Mit freundlichen Grüßen
Mattin

http://www.martin-karwoth.de
  Mit Zitat antworten Zitat
stonimahoni

Registriert seit: 12. Okt 2004
146 Beiträge
 
Delphi 7 Professional
 
#6

Re: Probleme mit Druckeransteuerung

  Alt 14. Dez 2005, 11:48
@ all : erstmal tausend dank für eure hilfe !!

@ Mattin : wenn du hier wärst würd ich dir ne kiste bier spendieren !

Man man man...ich hab das prob die ganze zeit auf dem hauptformular gesucht und nicht gedacht , dass ich quickrep extra noch den drucker dann zuweisen muss. Dachte dass wenn ich den vorher schon zuweise, der Drucker dann automatisch herangezogen wird.





ABer nun gehts endlich.



VIELEN VIELEN DANK NOCHMAL



MFG

Carsten

Carsten
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:15 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