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 CoolTrayIcon Events (https://www.delphipraxis.net/26615-cooltrayicon-events.html)

RuX 26. Jul 2004 15:14


CoolTrayIcon Events
 
Ich probier grad ein bischen mit der CoolTrayIcon Komponente herum (für die dies nicht kennen: komponente zum verwalten eines tray icons), und musste leider festellen das die Events für die Hints leider nicht funktionieren. Hab mich jetzt nicht näher damit beschäftigt, aber die selbst definierten Messages die in der CoolTrayIcon.pas definiert sind
Delphi-Quellcode:
NIN_BALLOONSHOW     = WM_USER + 2;
scheinen nicht zu funktionieren, sprich die entsprechenden Werte treten nie ein
Delphi-Quellcode:
procedure TTrayIconHandler.HandleIconMessage(var Msg: TMessage);
 ....
 if Msg.Msg = WM_TRAYNOTIFY then
  // Take action if a message from the tray icon comes through
  begin
    with TCoolTrayIcon(Msg.wParam) do
    begin
      case Msg.lParam of
        ....
        NIN_BALLOONSHOW: begin //ist nie der fall, sollte aber natürlich beim hint pop-up reinspringen
          if Assigned(FOnBalloonHintShow) then
            FOnBalloonHintShow(Self);
        end;
....
Kennt vielleicht einer das problem, oder weiß sogar worans liegt/was ich grad falschmach? :)
OS wäre winxp

gothic_mike 27. Jul 2004 10:50

Re: CoolTrayIcon Events
 
Zitat:

Zitat von RuX
Ich probier grad ein bischen mit der CoolTrayIcon Komponente herum (für die dies nicht kennen: komponente zum verwalten eines tray icons), und musste leider festellen das die Events für die Hints leider nicht funktionieren. Hab mich jetzt nicht näher damit beschäftigt, aber die selbst definierten Messages die in der CoolTrayIcon.pas definiert sind
Delphi-Quellcode:
NIN_BALLOONSHOW     = WM_USER + 2;
scheinen nicht zu funktionieren, sprich die entsprechenden Werte treten nie ein
Delphi-Quellcode:
procedure TTrayIconHandler.HandleIconMessage(var Msg: TMessage);
 ....
 if Msg.Msg = WM_TRAYNOTIFY then
  // Take action if a message from the tray icon comes through
  begin
    with TCoolTrayIcon(Msg.wParam) do
    begin
      case Msg.lParam of
        ....
        NIN_BALLOONSHOW: begin //ist nie der fall, sollte aber natürlich beim hint pop-up reinspringen
          if Assigned(FOnBalloonHintShow) then
            FOnBalloonHintShow(Self);
        end;
....
Kennt vielleicht einer das problem, oder weiß sogar worans liegt/was ich grad falschmach? :)
OS wäre winxp

also, bei mir funktioniert das alles einwandfrei. (win xp, delphi 7, CoolTrayIcon ver. 4.3.1)
eventuell mal die aktuelle version von CoolTrayIcon besorgen...

RuX 27. Jul 2004 14:47

Re: CoolTrayIcon Events
 
von genau da hab ichs vorgestern erst runtergeladen :gruebel: kann doch nicht sein das der rechner so ein großen hau hat oder?
man muss dazu sagen dass der hint ganz normal funktioniert, bloß der event tritt nicht ein. Verwende OnBalloonHintShow, das sollte doch der "OnHintPopup" event sein oder?
showhint ist auch true, und sonstige propertys sollten das ja nicht beeinflussen, richtig?

gothic_mike 27. Jul 2004 23:38

Re: CoolTrayIcon Events
 
Zitat:

Zitat von RuX
von genau da hab ichs vorgestern erst runtergeladen :gruebel: kann doch nicht sein das der rechner so ein großen hau hat oder?
man muss dazu sagen dass der hint ganz normal funktioniert, bloß der event tritt nicht ein. Verwende OnBalloonHintShow, das sollte doch der "OnHintPopup" event sein oder?
showhint ist auch true, und sonstige propertys sollten das ja nicht beeinflussen, richtig?

also, bei
Code:
CoolTrayIcon1.ShowBalloonHint('Title', 'Text', bitInfo, 10);
ist das bei mir das Event "OnBalloonHintShow" ein "OnHintPopup" gibt's bei mir garnicht...

ShowHint ist eigentlich egal, hat nix mit dem BalloonHint zu tun,

hmm... ich weis jetzt zwar nicht, was passiert, wenn man die BalloonHints in WinXP deaktiviert hat, ob CoolTrayIcon trotzdem den hint anzeigt, aber kein Event ausgelöst wird...

funktionieren die Demos, die dabei sind?

RuX 3. Aug 2004 15:54

Re: CoolTrayIcon Events
 
Zitat:

Zitat von gothic_mike
also, bei
Code:
CoolTrayIcon1.ShowBalloonHint('Title', 'Text', bitInfo, 10);
ist das bei mir das Event "OnBalloonHintShow" ein "OnHintPopup" gibt's bei mir garnicht...

ich weiß das war nur zur verdeutlichung, ich wollte eben ausdrücken dass ich das event meine das auftritt wenn der hint aufpopt :)

Zitat:

Zitat von gothic_mike
hmm... ich weis jetzt zwar nicht, was passiert, wenn man die BalloonHints in WinXP deaktiviert hat, ob CoolTrayIcon trotzdem den hint anzeigt, aber kein Event ausgelöst wird...

bei win2k gehts auch nicht, kann also nicht an deaktivierten hints liegen. beim popup springt er einfach nicht ins event, ka wieso.

Zitat:

Zitat von gothic_mike
funktionieren die Demos, die dabei sind?

muss ich mal testen obs bei denen geht.

p.s.: bin noch ein interessantes anderes phänomen gestoßen: bei win2k, nt4 werden die hintergrundfarben die ich teilweise dynamisch dem trayicon zugewiesen habe nicht dargestellt (statt orange -> gelb). bei xp kann ich alle farbtöne verwenden, die win2k rechner scheinen nur 16/256 farben oder so darstellen zu können? kann das sein?


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:18 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