Einzelnen Beitrag anzeigen

Benutzerbild von Cyberaxx
Cyberaxx

Registriert seit: 15. Jul 2005
311 Beiträge
 
Delphi XE5 Professional
 
#3

AW: Bild auf Bild kopieren/übermalen & Transparenz

  Alt 15. Jun 2012, 10:06
Hmmm... Mache ich doch auch?

Ich habe einmal ein TPNGImage in dem das Button Bild lieft und einmal ein TPNGImage in dem das Icon liegt.

Zur Design Time ist jedilich das Bild ohne Icon vorgeladen.
Beim starten werden die beiden TPNGImages gefüllt mit den Bildern.

Bisher natürlich nur auf Klickt um mein Programm nicht direkt zu versauen.
Dann wird auf den Canvas vom JvImage.Picture eben das Icon gezeichnet.

JvImage1.Picture.Bitmap.Canvas.Draw(X,Y, IconImage); so jetzt soll eben das Icon nicht mehr angezeigt werden und ich nutze die Funktion.

Delphi-Quellcode:
  var
    DestFrame: TRect;
begin
  DestFrame := ButtonImage.Canvas.ClipRect;
  JvImage1.Picture.Bitmap.Canvas.StretchDraw(DestFrame, ButtonImage);
Damit bekomme ich eben das letzte Bildchen aus dem angehängten Bild.
Dabei sollte doch, wenn ichs richtig verstanden habe der gesamte Bereich übermalt werden.
Leider sind eben die Bilder dabei Transparent.

Wie kann ich denn das Picture der Komponente neu erstellen zur Laufzeit? Auf nil setzen und dann normal wieder laden?
Wie würde das denn von der Performance aussehen?
Daniel
Das Aufwachen aus einem boesen Traum muss einen nicht erleichtern. Es kann einen auch erst richtig gewahr werden lassen, was man Furchtbares getraeumt hat, vielleicht sogar welcher furchtbaren Wahrheit man im Traum begegnet ist!
  Mit Zitat antworten Zitat