Autor Beitrag
Unzi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 57



BeitragVerfasst: So 16.03.03 11:25 
Hallo Leute,

ich habe folgendes Problem: Wenn ich ein Dokument mit dieser Prozedur:
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
procedure TForm1.Drucken2Click(Sender: TObject);
var
  i: Integer;
begin
  with Printer do
    begin
      BeginDoc;
      Title:=Form1.Caption;
      Canvas.Font:=Memo1.Font;
      for i := 0 to Memo1.Lines.Count do
       Canvas.TextOut(200,200 + (i * Canvas.TextHeight(Memo1.Lines[i])),Memo1.Lines.Strings[i]);
      Canvas.Font:=Memo2.Font;
      for i := 0 to Memo2.Lines.Count do
       Canvas.TextOut(4000,200 + (i * Canvas.TextHeight(Memo2.Lines[i])),Memo2.Lines.Strings[i]);
      Canvas.Brush.Color := clBlack;
      EndDoc;
    end;
end;

drucken will, klappt das beim ersten Durchlauf auch noch ganz gut. Beim zweiten Mal hingegen werden bei mir nur noch schwarze Kästchen von der Größe des Textes ausgegeben. Kann mir jemand sagen, woran das liegen könnte? Ach ja, wenn ich das Programm neu starte, wird auch beim ersten Mal alles wieder normal gedruckt. Danke im voraus.

Unzi

Moderiert von user profile iconTino: Code-Tags hinzugefügt.
AndyB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1173
Erhaltene Danke: 14


RAD Studio XE2
BeitragVerfasst: So 16.03.03 12:41 
Das liegt daran, dass die Printer.Canvas ihre Einstellungen merkt. Wenn du also am Ende deiner Routine die Brush-Farbe auf clBlack setzt, wird automatisch auch Brush.Style := bsSolid gesetzt. Um das beim nächsten Durchlauf wieder rückgängig zu machen, solltest du vor dem Drucken (aber nach BeginDoc) Pen, Brush und Font auf deine gewünschten Werte setzen. Somit ist es dann egal, wie diese Eigenschaften nach dem Druck eingestellt sind.

_________________
Ist Zeit wirklich Geld?
Cash
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 40



BeitragVerfasst: Mo 17.03.03 17:41 
Gibt es denn nicht irgendeine Procedure, die es ermöglicht die Seite oder Sonstiges mehrmals so zu drucken, ohne die Einstellungen jedes mal zu verändern?

_________________
Ein Sieger gewinnt etwas, ein 'Geschlagener' lernt eine Menge dazu :)