Einzelnen Beitrag anzeigen

Hanzmeierschulz

Registriert seit: 10. Jun 2006
16 Beiträge
 
Delphi 7 Professional
 
#31

Re: Aero Glass Effekt für Delphi-Forms

  Alt 17. Sep 2006, 19:07
Bin schon (lange) zu einer Lösung gekommen, aber das wird niemanden gefallen, deshalb suche ich nach einer besseren Lösung und das wird wohl noch etwas dauern.

Wen's interessiert, die Lösung ist, dass man SetLayeredWindowAttributes nicht mehr verwendet. Das hat zur Folge, dass dort wo es schwarz ist, wird das Glass angewendet. Da aber Delphi, GDI und nicht GDI+ verwendet, wird es schwierig sein eine Lösung zu finden, denn GDI kann kein ARGB, d.h. leider macht u.a. Vista den Alpha-Teil = 0 für GDI (nicht Plus). Das bedeutet wiederrum, dass aber 0 für volle Transparenz steht (da verstehe ich MS nicht???). Wie auch immer, der Glass-Effekt wird aber auf Schwarz (bis vor kurzem auch alle anderen Farben) mit Alpha=0 angewendet. Somit würde das Glass auf normalen GDI Anwendungen gehen, nur leider auch in Textboxen und anderen Controls, die Schwarz verwenden. Hätte nur MS in beiden Fällen Alpha=255 gewählt oder zumindest beim DWM die freie Wahl gelassen. Mit SetLayeredWindowAttributes konnte man dieser GDI vs. ARGB entgegensteuern, nur hat MS dort seit 5536 was geändert das sich SetLayeredWindowAttributes mit DWM nicht mehr so richtig verträgt.

Mal sehen ob es da eine Lösung gibt, ich suchen...
  Mit Zitat antworten Zitat