Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi PaintBox automatisch neuzeichnen (https://www.delphipraxis.net/12101-paintbox-automatisch-neuzeichnen.html)

Urba 20. Nov 2003 16:50


PaintBox automatisch neuzeichnen
 
Hallo Leute,

Schon wieder ich :-)

Ich habe nun ein neues Problem. Ich wusste ehrlichgesagt nicht nach was ich in der Suche suchen sollte. Also, wenn man eine Image-Kompo o.ä. bezeichnet hat und mit beispielsweise mit einer anderen Form über das eigene Programm fährt, so ist das gezeichnete "überschrieben". Wie kann ich dem entgegenwirken ?

Gruss
Christof

himitsu 20. Nov 2003 17:08

Re: PaintBox automatisch neuzeichnen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Du zeichnest einfach nicht direkt auf die PaintBox sonder in ein BitMap und weist dann der PaintBox diese BitMap zu.

Wenn du natürlich ins BitMap gezeichnet hast, mußt du nachher noch die PaintBox refreshen.

Urba 20. Nov 2003 17:15

Re: PaintBox automatisch neuzeichnen
 
Erstmal danke, aber das ist nicht das was ich suche. Ich zeichne ja selbst auf den Canvas einer PaintBox und möchte jetzt nicht unbedingt noch ne Image-Kompo einbauen um dort auf dem Bitmap malen zu können. Ausserdem kann man auf einem Bitmap nicht selbst zeichnen, sondern nur auf dem Canvas.

Genau da liegt aber das Problem.

Christof

Luckie 20. Nov 2003 17:20

Re: PaintBox automatisch neuzeichnen
 
Eine Image-Komponente nimmt man nur, um Bilder darzustellen. Zum Zeichen nimmt man eien Paintbox.

Und da geht man so vor: man zeichent nicht direkt auf das canvas der paintbox, sondern auf ein Pitmap im Speicher. Un immer wenn es erforderlich ist kopiert man mit BitBlt das Bitmap im Speicher auf den Canvas der Paintbox. Zum Beispiel im OnPaint Ereigniss der Paintbox. Wie das praktisch aussieht kannst du hier kucken: http://www.luckie-online.de/files/demos/ -> OffScreenBitmap

himitsu hat auch nicht von einer Image-Komponente geredet. Sondern von einem Bitmap, was nur im Speicher existiert. Ich nehme mal an, er meint das, was ich eben beschrieben habe.

himitsu 20. Nov 2003 17:30

Re: PaintBox automatisch neuzeichnen
 
Meine ich auch, hab nur der einfachheit halber das Bild in dem Image.

In dem OnPaint-Ereignis kann man ja auch eine andere Zeichenfläche angeben. (z.B. ein BitMap)

Urba 20. Nov 2003 17:43

Re: PaintBox automatisch neuzeichnen
 
Super ... Danke euch ... ich hatte es erst falsch verstanden. Habe es nun dass es klappt - Nebenbei habe ich dadurch auch einen Performance Fehler weg bekommen :-D DANKE


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:58 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