![]() |
TCoolTrayIcon Overlay-Icon
Ich benutze seit Jahren das TCoolTrayIcon und es funktioniert ohne Probleme. Außerdem sind ein paar nützliche Funktionen dabei wie HideMainForm und HideTaskbarIcon.
Aber kann die Komponente auch ein Overlay-Icon über dem eigentlichen Icon anzeigen so wie man es in der Taskleiste machen kann? Falls nicht, wie bekommt man das sonst hin? |
AW: TCoolTrayIcon Overlay-Icon
Beinhaltet der Quelltext dieser Komponente dann so etwas wie das Wort 'Overlay' irgendwo?
Wenn nein, dann kann es das wohl nicht. Aber du müsstest mit deiner jetzigen CE Version TTaskBar haben. Damit kannst du das machen. Blog-Beitrag: ![]() Doku: ![]() |
AW: TCoolTrayIcon Overlay-Icon
TTaskBar scheint nur für die Taskbar zu sein. Ich suche eine Möglichkeit, das Overlay-Icon über dem Tray-Icon anzuzeigen.
TTaskBar gucke ich mir, falls ich ein Overlay-Icon in der Taskbar brauche, aber auch an. |
AW: TCoolTrayIcon Overlay-Icon
Zitat:
Ok denke wohl eher das.. 2.png Progreß--Bar im Pause Status mit Overlay Icon (Pause) |
AW: TCoolTrayIcon Overlay-Icon
Nee das ist es beides nicht.
Das, was ihr da für die TaskBar zeigt, brauche ich für das Icon im System tray. |
AW: TCoolTrayIcon Overlay-Icon
Wenn es Dir nur darum geht ein icon auf ein anderes zu malen, für sowas hatte ich mir mal was geschrieben.
(Icon wird zu Bitmap, Bitmap mit Grafik verschmelzen und dann zurück in ein Icon.) Wenn es Dir um die gleiche Funktionalität wie es in der TaskBar angeboten wird, Overlay Buttons, Preview, JumpList usw, da musst Du wohl selbst Hand anlegen. Mir ist bis jetzt noch nichts in dieser Richtung bekannt. |
AW: TCoolTrayIcon Overlay-Icon
Zitat:
|
AW: TCoolTrayIcon Overlay-Icon
Klar teile ich den Code, bissl Geduld bitte, muss da echt viel suchen :-)
Was mir noch eingefallen ist, Mouse Events. Beim MouseEnter ein mini Borderless Formular übers Icon darstellen lassen mit Inhalt "was auch immer Du brauchst um happy zu sein". Lass es Dir mal durch den Kopf gehen da ich noch nicht weiß was zu zu bezwecken versuchst. So ich buddel mal in meinen Archiven weiter. Bis bald |
AW: TCoolTrayIcon Overlay-Icon
Zitat:
So wie es die TTaskBar macht. |
AW: TCoolTrayIcon Overlay-Icon
Ich finde nicht das gewollte aber bei der Schatzsuche bin auf diesen Code gestolpert.
Viel Spaß beim testen.
Delphi-Quellcode:
Ps: Icon Größe sollte identisch sein.
// uses* Windows, Forms, Controls, Classes, Graphics, StdCtrls, ExtCtrls, CommCtrl;
function MergeIcons(var Icon: HICON; Overlay: HICON): Boolean; var Source, Dest: HIMAGELIST; Width, Height: Integer; begin Result := False; Width := GetSystemMetrics(SM_CXSMICON); Height := GetSystemMetrics(SM_CYSMICON); Source := ImageList_Create(Width, Height, ILC_MASK or ILC_COLOR32, 1, 0); if Source <> 0 then begin if (ImageList_AddIcon(Source, Icon) <> -1) and (ImageList_AddIcon(Source, Overlay) <> -1) then begin Dest := HIMAGELIST(ImageList_Merge(Source, 0, Source, 1, 0, 0)); if Dest <> 0 then begin DestroyIcon(Icon); Icon := ImageList_ExtractIcon(0, Dest, 0); ImageList_Destroy(Dest); Result := True; end; end; ImageList_Destroy(Source); end; end; procedure TForm1.Button1Click(Sender: TObject); var Ico: HICON; begin Ico := TrayIcon1.Icon.Handle; // hole original icon MergeIcons(Ico, Image1.Picture.Icon.Handle); // verschmelze es mit einem anderen icon TrayIcon1.Icon.Handle := Ico; // nutze das neue icon end; Pps: Das zweite Icon so gestalten das welche Ecke auch immer Deinen Wunsch entspricht. Ich nutzte das um einen Roten oder Grünen Punkt raufzukleben. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:15 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