![]() |
transparentes bild über form legen und hin und her blenden
hi,
habe mal ein frage undzwar: ich habe eine form mit einem hintergrund bild. nun möchte ich das dieses hintergrund mit was transparenten überdeckt wird, was dann nach einer zeit wieder langsam sichtbar wird. und das immer hin und her... habe leider kA wie ich das anfangen soll. hab hier im forum verschiedenes gesehen, wie man eine form überdeckt, nur leider wird das immer wieder und wieder überdeckt, bis ich nix mehr sehe... aber sichtbar krieg ichs net. kann mir jemand helfen? Ciao |
Re: transparentes bild über form legen und hin und her blend
Liste der Anhänge anzeigen (Anzahl: 1)
Ehrlich gesagt habe ich fast nichts von deinem Post verstanden. Wenn du ein Bild über ein anderes legen willst (also blenden), solltest du dir die
![]() |
Re: transparentes bild über form legen und hin und her blend
ehm ne sowas net.
hatte mich vllt komisch ausgedrückt, also nochmal: mein programm hat als hintergrund ein bild. so dieses bild soll die ganze zeit hin und her "faden" (überblenden) also von sichtbar nach unscihtbar und von unsichtbar nach sichtbar.... (hätt ich eigentlich gleich so beschreiben können :D) hoffe is nun verständlicher. |
Re: transparentes bild über form legen und hin und her blend
Zitat:
|
Re: transparentes bild über form legen und hin und her blend
neee auch net *g*
der hintergrund is schwarz und in der mitte ein bild. ein logo gewissermaßen ;) und dieses logo soll AUF der FORM immer verschwinden und wieder auftauchen....also einmal hab ich eine form die ganz schwarz ist, paar sekunden später eine schwarze form, die ein logo in der mitte hat ;) das will ich *g* |
Re: transparentes bild über form legen und hin und her blend
wie gesagt:
![]() |
Re: transparentes bild über form legen und hin und her blend
aha.
hier gibts ja richtig "viel" darüber ^^ gibts da nicht eine methode, die auch so mit delphi geht, ohne zusatzkram? |
Re: transparentes bild über form legen und hin und her blend
Gut, das fällt unter Vermutung zwei :wink: . Du brauchst einen Alpha-Wert (Byte), den du in einem Timer immer zwischen 255 und 0 pendeln lässt. Das Logo hast du in einem TBitmap(32), dieses blendest du mit dem Hintergrund auf ein TImage(32).
Drei Ansätze zum Blenden: - TCanvas.Pixels (langsam) - TBitmap.Scanline (Pointer :wink: ) - GR32 Pseudocode für 1 und 2:
Delphi-Quellcode:
Nummer drei benötigt etwas Einarbeitung in die Lib, dafür wirds dann ziemlich schnell (vom Code und der Ausführung):
RGB(Image) = RGB(Bitmap) * Alpha + RGB(Background) * (255 - Alpha)
Delphi-Quellcode:
oder auch
for i := 0 to Image.Height * Image.Width -1 do
Image.Bits[i] := BlendReg(Alpha shl 24, Bit.Bits[i]); EMMS;
Delphi-Quellcode:
// Bit.DrawMode = dmBlend
Image.Bitmap.Clear(Alpha shl 24); Image.Bitmap.Draw(0, 0, Bit); [edit]Zuu langsam :stupid: . Passt trotzdem. [/edit] |
Re: transparentes bild über form legen und hin und her blend
ochnä. das is mir nun zuviel arbeit. dachte das könnt ich eben schnell mal machen.
entweder ich lass das sein oder mach eine gifanimation da draus ;) |
Re: transparentes bild über form legen und hin und her blend
Wenn man etwas Ahnung hat, geht das ziemlich schnell :P . Außerdem musst du doch mal was Neues lernen :wink: . Oder willst du dich dem Grafik-Bereich für immer verschließen?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:19 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz