AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

BalloonTimeout bei TTrayIcon geht nicht

Ein Thema von Viktorii · begonnen am 27. Mai 2009 · letzter Beitrag vom 18. Feb 2011
Antwort Antwort
Viktorii

Registriert seit: 19. Jul 2007
358 Beiträge
 
#1

BalloonTimeout bei TTrayIcon geht nicht

  Alt 27. Mai 2009, 08:33
Moin zusammen.

Ich benutzte bei meine TrayIcon die Sprechblase um Informationen anzeigen zu lassen. Nun möchte ich das die Sprechblase nach einer gewissen Zeit von selbst verschwindet.

Dazu habe ich die Eigenschaft BalloonTimeout auf 1000 gesetzt.

Aber die Sprechblase verschwindet einfach nicht.

Wo liegt das Problem?

Vielen Dank.
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#2

Re: BalloonTimeout bei TTrayIcon geht nicht

  Alt 3. Jun 2009, 20:10
Hallo

Andere haben anscheinend auch dieses Problem.
Mögliche Lösung: Mal im Quelltext schauen, wie BalloonTimeout zu verwenden ist oder ob es sich tatsächlich um einen Bug handelt. Ansonsten auf eine andere TrayIcon Komponente (z.B CoolTrayIcon) ausweichen.
Thomas
  Mit Zitat antworten Zitat
Viktorii

Registriert seit: 19. Jul 2007
358 Beiträge
 
#3

AW: BalloonTimeout bei TTrayIcon geht nicht

  Alt 10. Feb 2011, 12:13
So, nun habe ich wieder ein Projekt mit einem BalloonHint und der 'Bug' ist in DelphiXE immer noch vorhanden.

Ich habe das Problem damals per Timer gelöst, der nach ns BalloonHint auf '' setzt... dann verschwindet er auch...

Nun möchte ich in meinem neuen Projekt diese zusätzlichen Timer aber nicht haben, da diese (und das ganze Starten und Stoppen usw.) dan Quellcode unübersichtlich macht.

Deswegen habe ich mir gedacht ich mache mir einfache eine von TTrayIcon abgeleitete Komponete, welche einen Timer enthält.

Das habe ich soweit auch schon gemacht:

Delphi-Quellcode:
unit MyTrayIcon;

interface

uses
  ExtCtrls, Classes;

type
  TMyTrayIcon = class(TTrayIcon)
  private
    FBallonShowInterval: cardinal;
    FTimer: TTimer;
  protected

  public

  published
    constructor Create(Owner: TComponent); override;
    destructor Destroy; override;
    property BallonShowInterval: cardinal write FBallonShowInterval;
  end;

procedure Register;

implementation

uses
  SysUtils;

procedure Register;
begin
  RegisterComponents('MyComponents', [TMyTrayIcon]);
end;

{ TMyTrayIcon }

constructor TMyTrayIcon.Create(Owner: TComponent);
begin
  inherited;
  FTimer := TTimer.Create(self);
end;

destructor TMyTrayIcon.Destroy;
begin
  if assigned(FTimer) then
    FreeAndNil(FTimer);
  inherited;
end;

end.
Nur fehlt mir das Ergeifnis wenn der BalloonHint angezeigt wird. In diesem muss ich den Timer dann ja starten.

TTrayIcon hat aber nur diese Ereignisse:

Zitat:
Ereignisse von ExtCtrls.TTrayIconAus RAD Studio VCL Reference
Übergeordnetes: TTrayIcon

OnAnimate
OnBalloonClick Wird ausgelöst, wenn der Sprechblasenhinweis angeklickt wird.
OnClick
OnDblClick
OnMouseDown
OnMouseMove
OnMouseUp
Wie kann ich diese Problem lösen?

Noch eine OT Zusatzfrage: Muss ich im destructor eigentlich FreeAndNil(FTimer); machen?

Im Konstruktor habe ich ja einen Owner angegeben. Wenn dieser freigegeben wird, werden doch auch automatisch alle Objekte welche dieses Objekt als Owner haben freigegeben, oder?
  Mit Zitat antworten Zitat
Viktorii

Registriert seit: 19. Jul 2007
358 Beiträge
 
#4

AW: BalloonTimeout bei TTrayIcon geht nicht

  Alt 15. Feb 2011, 10:36
*push*
  Mit Zitat antworten Zitat
Viktorii

Registriert seit: 19. Jul 2007
358 Beiträge
 
#5

AW: BalloonTimeout bei TTrayIcon geht nicht

  Alt 18. Feb 2011, 13:31
Keiner eine Idee
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21: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