Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi TCoolTrayIcon, keinen Alphachannel? (https://www.delphipraxis.net/95876-tcooltrayicon-keinen-alphachannel.html)

Kill0r 15. Jul 2007 00:18


TCoolTrayIcon, keinen Alphachannel?
 
Hi, ich bins schon wieder

Bin nun auf ein weiteres Problem gestossen bezüglich eines TrayIcons ;)
Ich verwende die TCoolTrayIcon Komponente zur Darstellung eines Icons in der TNA. Nun wollte ich diese Komponente zusammen mit einem Icon nutzen welches einen Alphachannel besitzt :?
Jetzt musste ich feststellen, dass diese Komponente dies anscheinend nicht unterstützt da ein hässlicher Rand bei den Stellen angezeigt wird welche leicht transparaent sein sollten. Als ImageList hab ich die TPngImageList genutzt.
Kennt ihr vielleicht eine Lösung oder eine andere (von der Benutzung vergleichbar mit TCoolTrayIcon) Komponente welche dies unterstützt? :)
Auf Torry.net konnte ich auch nichts brauchbares finden.

Edit:Hab nun herausgefunden, dass dies nur passiert wenn man eine ImageList verwendet, wählt man das Icon direkt an und kompiliert dann ist die Transparenz vorhanden. Muss wohl an der internen Bitmap-Umwandlung in der TCoolTrayIcon Komponente liegen. Ich schau mal was ich da machen kann um das Icon trotzdem zu animieren.

Cu
Kill0r

Kill0r 15. Jul 2007 20:16

Re: TCoolTrayIcon, keinen Alphachannel?
 
Okay Problem hat sich erledigt ;)
Hab mir nun ne eigene Klasse geschrieben, welche von TThread ableitet und nun das Animieren übernimmt.
Ich hab die Icons als Ressource in die EXE miteinkompiliert und die werden dann von meinem Animations-Thread abwechselnd der TCoolTrayIcon Komponente zugewiesen.
Das Problem scheint also bei der Umwandlung von Bildern --> Icons zu liegen, weil anscheinend auf ein normales TBitmap gezeichnet wird und so die Transparenz verloren geht.

Ich hoffe noch anderen Leuten geholfen zu haben, welche auf ein ähnliches Problem stossen :-D
Falls erwünscht, kann ich die Klasse hier rein stellen.

Cu
Kill0r


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:28 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz