Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.048 Beiträge
 
Delphi 12 Athens
 
#2

AW: TTrayicon.BalloonHint entfernen

  Alt 26. Jun 2024, 18:58
In der VCL-Klasse is halt nix für drin.
Aber schau doch mal, ob du bei Windows was findest?

MSDN-Library durchsuchenShell_NotifyIcon und NIN_BALLOONHIDE klang nett.

Nja, dann noch der Spaß, dass die Klasse bissl scheiße designt ist.



Hab mal was versucht ... half aber noch nix.
Delphi-Quellcode:
uses
  ...
  Winapi.ShellAPI;

type
  TTrayIcon = class(Vcl.ExtCtrls.TTrayIcon);

type
  TForm27 = class(TForm)
    TrayIcon1: TTrayIcon;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  end;

...

procedure TForm27.Button1Click(Sender: TObject);
var
  Data: TNotifyIconData;
begin
  TrayIcon1.BalloonHint := 'This is a Balloon Hint';
  TrayIcon1.BalloonTitle := 'Hint Title';
  TrayIcon1.ShowBalloonHint;
  Application.ProcessMessages;
  Sleep(2000);

  Data := TrayIcon1.Data;
  Data.uFlags := Data.uFlags and not NIF_INFO;
  //Shell_NotifyIcon(NIM_MODIFY, @Data);
  Shell_NotifyIcon(NIN_BALLOONHIDE, @Data);
end;
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat