Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Panel und Alpha blending bzw. Halbtransparent


Niels_ - Do 09.12.04 17:15
Titel: Panel und Alpha blending bzw. Halbtransparent
Hallo!

Ab den neueren Delphi versionen ist es ja möglich die Form per Alphablending durchsichtig bzw. halbdurchsichtig zu machen. Geht das irgendwie auch für Panels, und wenn ja wie?


Ja-Pa - Do 09.12.04 17:29

Wenn das From durchsichtig ist, dürfte es das Panel auch sein.
Oder willst du, das man durch das Panel das Form durchsieht?


Niels_ - Do 09.12.04 23:04

Ja, ich möchte gerne, dass man durch das panel die Form sieht...


Lossy eX - Fr 10.12.04 07:20

Das geht nicht. Die einzige Möglichkeit, die du dabei hättest, wäre den Inhalt deines Formulars zu kopieren und dann mittels Paintbox oder direkt auf die Canvas von dem Formular das von dir halbtransparent gerechnete Bild zu Zeichnen. Allerdings wird das mit GDI einfach nur unsäglich langsam und du musst alles per Hand machen.

Eine andere Alternative wäre vielleicht GDI+ [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdicpp/GDIPlus/aboutGDIPlus/whatsnewinGDIPlus.asp]. Aber damit kenne ich mich nicht aus.


Ja-Pa - Fr 10.12.04 18:14

Lossy eX hat folgendes geschrieben:
Eine andere Alternative wäre vielleicht GDI+ [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdicpp/GDIPlus/aboutGDIPlus/whatsnewinGDIPlus.asp]. Aber damit kenne ich mich nicht aus.


War das nicht das mit dem JPG-Buffer-Overrun? :wink:


Lossy eX - Fr 10.12.04 18:36

Das ist von Kleinweich. Da ist alles möglich. ;-)

Und außerdem wo ist denn heutzutage kein Buffer Overrun eingebaut? Das dürfte eine sehr kurze Liste werden. :twisted:


Ja-Pa - Fr 10.12.04 18:42

Ja, aber bei JPGs
Das war ein riesen Skandal, weil man sich allein durch das Betrachten einer JPG-Datei einen Schädling einfangen kann.
Und der Fehler war schwer zu beheben, da viele Programme die GDIPlus-DLL (mit Buffer-Overrun) selbst mitbringen.
Also verwende bitte die neue DLL :D

http://www.microsoft.com/germany/ms/security/jpegsec.mspx
http://www.heise.de/security/artikel/51526


Ja-Pa - Fr 10.12.04 18:55

Mir fällt grad ein, dass es Buffer Overflow statt Overrun heißt.
Es soll ja hier nichts falsches stehen :wink: