Child Window mit Alpha-Blending



  • Hi,

    ich würde gerne ein Child Window mit Alpha-Blending leicht durchsichtig machen.
    Was ich ausprobiert habe ist mit SetLayeredWindowAttributes() => das funkt aber nicht bei Child Windows (oder mach ich was falsch?)

    Hat jemand eine Idee? Muss nicht unbedingt mit einem Child Window sein.
    Vielleicht kann auch ein PNG welches Alpha-Blending hat über das Fenster gelegt werden. Aber da bekomm ich dann Probleme mit Controls... diese werden ja nach WM_PAINT gemalt... kann ich da irgendwie herumschrauben?



  • SetLayeredWindowAttributes() funktioniert nur bei Layered Windows (WS_EX_LAYERED) und leider: "Note that WS_EX_LAYERED cannot be used for child windows."

    Je nachdem was du vor hast: Nimm einfach kein child window.



  • mh, wie meinst du das kein Child Window?

    Was ich versuche zu bauen sollte sich so wie die JavaScript Lightbox verhalten.
    Hier ist ein Beispiel:
    http://www.huddletogether.com/projects/lightbox2/

    Einfach mal ein Bild anklicken.

    Also das Hauptfenster der App soll sichtbar bleiben. Ich möchte nur ein weiters darüber legen (oder irgendwie anders) und dann ein neues Child Window 0% Alpha-Blending darauf erstellen... ich hoffe das ist verständlich... 🙄



  • Das Beispiel sieht nicht so aus, als würde mit den Alpha-Werten des Bildmaterials gearbeitet. Der "Blending-Effekt" deutet eher auf Veränderung der Intensitätswerte, der sich z.B. erreichen lässt, indem jeder Bildpunkt mit einem Komplemetärfaktor (0 bis 255) beeinflusst wird.


Anmelden zum Antworten