AGB  ·  Datenschutz  ·  Impressum  







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

Datei drucken

Ein Thema von scuby · begonnen am 1. Sep 2005 · letzter Beitrag vom 7. Sep 2005
Antwort Antwort
scuby

Registriert seit: 31. Jul 2005
122 Beiträge
 
#1

Datei drucken

  Alt 1. Sep 2005, 13:56
Hallo zusammen,

es klingt villeicht etwas komisch, aber ich möchte eine datei per Button.click ausdrucken lassen.
Eine Worte vorab:

Zu Beginn lasse ich einige Einträge aus einer datenbank auslesen und diese dann in eine datei (*.htm) einfügen und generieren.

Nach abschluss dieser Generierung möchte ich die datei dann sofort Drucken. Wie ist dies Technisch lösbar ohne erst die datei zu öffnen und dann über datei --> Drucken das ganze zu machen?

Ich würde mich über eine Antwort von euch freuen.

Scuby
  Mit Zitat antworten Zitat
dfried

Registriert seit: 16. Aug 2005
486 Beiträge
 
#2

Re: Datei drucken

  Alt 1. Sep 2005, 14:02
Müsste vermutlich über "Shellexecute" mit der Operation "print" gehen. Habs aber noch nicht probiert, fiel mir nur so spontan ein.

Gruß
Daniel
  Mit Zitat antworten Zitat
scuby

Registriert seit: 31. Jul 2005
122 Beiträge
 
#3

Re: Datei drucken

  Alt 1. Sep 2005, 14:39
Ich habe noch nie zuvor mit diesen Drucksachen gearbeitet. Gibt es dafür irgendwo Tutorials oder schon Programmezeilen, die Ihr fertig habt, damit man sich das ganze mal in Ruhe anschauen kann?
  Mit Zitat antworten Zitat
Benutzerbild von JWeis
JWeis

Registriert seit: 23. Aug 2005
Ort: Homburg
274 Beiträge
 
Delphi 7 Professional
 
#4

Re: Datei drucken

  Alt 1. Sep 2005, 14:48
Es gibt nen printersetupdialog
und nen printdialog

Delphi-Quellcode:
procedure TForm1.button1Click(Sender: TObject);
begin
  PrinterSetupDialog1.Execute;
end;

procedure TForm1.button2clik(Sender: TObject);
var
  n, m, maxText: word;
begin
  if PrintDialog1.Execute then
  begin
    Printer.Title:= FFileName;
    Printer.BeginDoc;
    {beginn der Druckanweisung}
    m:=0;
    n:=0;
    Printer.NewPage;
    while m<Memo1.Lines.Count do
    begin
      Printer.Canvas.TextOut(50,50+n,Memo1.Lines[m]);
      maxText:= Printer.Canvas.TextHeight(Memo1.Lines[m]);
      Inc(n,maxText);
      if n>= Printer.PageHeight-100 Then
      begin
        Printer.NewPage;
        n:=0;
      end;
      inc(m);
    end;
    {ende der Druckanweisung}
    Printer.EndDoc;
  end;
end;
Johannes
  Mit Zitat antworten Zitat
scuby

Registriert seit: 31. Jul 2005
122 Beiträge
 
#5

Re: Datei drucken

  Alt 1. Sep 2005, 15:19
Hmmm... das sieht doch gar nicht schlecht aus, damit kann ich was anfangen, aber eins noch dazu, wo setze ch denn meinen Filename ein, damit er die Datei komplett druckt ?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: Datei drucken

  Alt 1. Sep 2005, 15:59
Hallo scuby,

ich will weder dich noch deine Helfer hier aus dem Konzept bringen, aber eine Frage drängt sich mir auf: Wenn du in deinem Programm ein HTML Dokument erzeugst, um dieses dann zu drucken, warum speicherst du es dann erst noch als Datei? Vielleicht hast du ja dafür bestimmte Gründe, die du hier nicht erläutern wolltest. Wenn nicht, dann könntest du auch eine TWebBrowser-Komponente verwenden, diese mit deinem HTML-Dokument befüllen und dann reicht das hier:

Delphi-Quellcode:
const
  SHOW_UI: true;

begin
  with WebBrowser.Document as IHTMLDocument2 do
    ExecCommand('print', SHOW_UI, null);
end;
Wenn ich daneben liege, dann vergiss einfach alles was ich hier geschrieben habe...

Grüße vom marabu
  Mit Zitat antworten Zitat
scuby

Registriert seit: 31. Jul 2005
122 Beiträge
 
#7

Re: Datei drucken

  Alt 7. Sep 2005, 13:58
Eigentlich meinte ich:

Wie kann ich die Windowsdruckeigenschaft eines Dokumentes direkt ansteuern?
Alsodas Dokument im ohne es zu öffnen direkt drucken und das ganze dann auf einen Butten in meinem Programm legen?

Hat jemand von euch eine Idee? Habe mich schon im Intenet totgesucht und hoffe nun hier Rat zu findne.

THX
Scuby
  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 21:25 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