Zum Inhalt springen

Borland Builder 6: Problem beim drucken mit Printer()


Empfohlene Beiträge

Hallo,

ich bin grad dabei ein wenig mit der Druckausgabe herumzuprobieren.

Dazu nutze ich den Code aus der Borland Hilfe:

C/C++ Code:

TPrinter *Prntr = Printer();

TRect r = Rect(200,200,Prntr->PageWidth - 200,Prntr->PageHeight- 200);

Prntr->BeginDoc();

for( int i = 0; i < Memo1->Lines->Count; i++)

{

Prntr->Canvas->TextOut(200,200 + (i *Prntr->Canvas->TextHeight(Memo1->Lines->Strings)),

Memo1->Lines->Strings);

}

Prntr->Canvas->Brush->Color = clBlack;

Prntr->Canvas->FrameRect®;

Prntr->EndDoc();

C/C++ Code:

TPrinter *Prntr = Printer();

TRect r = Rect(200,200,Prntr->PageWidth - 200,Prntr->PageHeight- 200);

Prntr->BeginDoc();

for( int i = 0; i < Memo1->Lines->Count; i++)

{

Prntr->Canvas->TextOut(200,200 + (i *Prntr->Canvas->TextHeight(Memo1->Lines->Strings)),

Memo1->Lines->Strings);

}

Prntr->Canvas->Brush->Color = clBlack;

Prntr->Canvas->FrameRect®;

Prntr->EndDoc();

Das Problem ist jetzt, dass ich wenn ich das erste Mal das ganze mit dem Klick auf den Button1 aufrufe funktioniert es tadellos, doch klick ich danach nocheinmal auf den Button, dann kommen an den Stellen an denen der Text stehen sollte nur schwarze Balken Kann mir jemand helfen???

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi SimonLZ,

du setzt die Hintergrundfarbe auf schwarz, und das wirkt sich beim erneuten Aufruf der Funktion natürlich aus.

Abhilfe schafft das setzen der Hintergrundfarbe auf weiß, bevor du beginnst den Text zu drucken:


TPrinter *Prntr = Printer();
Prntr->BeginDoc();
Prntr->Canvas->Brush->Color = clWhite;
for( int i = 0; i < Memo1->Lines->Count; i++)
{
Prntr->Canvas->TextOut(200,200 + (i *Prntr->Canvas->TextHeight(Memo1->Lines->Strings[i])),
Memo1->Lines->Strings[i]);
}
TRect r = Rect(200,200,Prntr->PageWidth - 200,Prntr->PageHeight- 200);
Prntr->Canvas->Brush->Color = clBlack;
Prntr->Canvas->FrameRect(r);
Prntr->EndDoc();
[/PHP]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...