Ein Hallöle von
http://www.FrankNStein.de/Smiley-Wolke.gif,
Zitat von
himitsu:
Wenn du etwas schreiben und dann wieder löschen willst, ohne den Hintergrund zu zerstören, musst du anders zeichnen/schreiben.
Delphi-Quellcode:
Canvas.Brush.Style := bsClear; {kein Hintergrund beim schreiben}
Canvas.Pen.Mode := pmNotXor;
Canvas.TextOut(X, Y, 'Text'); {Text schreiben}
Canvas.TextOut(X, Y, 'Text'); {Text wieder löschen}
Beispiele für PenMode (müsste der letzte Post auf der 1. Seite sein - von mir)
Idealer Weise, währe es besser nicht mit Schwarz und Weiß zu schreiben, sondern immer mit der selben Farbe und PenMode=pmNotXor.
Da verschwindet bei jedem 2. schreiben der Text wieder, so das der Hintergrund wieder hergestellt wird.
Denn
(X xor Y) xor Y = X
not ((not (X xor Y)) xor Y) = X
Konnte PenMode aber noch nicht für
API finden/aktivieren.
Ich weiß aber, das ich noch irgendwo 'ne Funktion für TextOut (
API-Version) haben, die hält sich aber seit meiner letzten Aufräumaktion sehr gut versteckt. (suche ab und zu mal danach - wenn sie auftaucht, sag' ich Bescheid)
http://www.FrankNStein.de/Smiley-Kuss.gif * *
http://www.FrankNStein.de/Smiley-Spinne.gif * * *
http://www.FrankNStein.de/Smiley-Winken.gif