Thema: Delphi Trayicon ändern

Einzelnen Beitrag anzeigen

Benutzerbild von Doc Morelli
Doc Morelli

Registriert seit: 14. Aug 2004
32 Beiträge
 
#1

Trayicon ändern

  Alt 17. Aug 2004, 12:07
Hallo,

ich hoffe, dass das hier jetzt richtig ist:

Meine Frage: Wie kann ich ein Trayicon ändern, ohne es zu removen?

Hier mal ein Teil von meinem Programm:

Code:
...
const
  WM_TASKBAREVENT = WM_USER+1;
...
  private
    procedure WMTASKBAREVENT(var message: TMessage);
        message WM_TASKBAREVENT;
...
procedure TForm1.WMTASKBAREVENT(var message: TMessage);
begin
  case message.LParamLo of
    WM_LBUTTONDOWN   : BEGIN
                          Showmessage('Linksclick');
                        end;
    WM_RBUTTONDOWN   : begin
                          Showmessage('Rechtsclick');
                        end;
    WM_LBUTTONDBLCLK : begin
                          Showmessage('Doppelclick');
                        end;
  end;
end;

procedure TaskBarAddIcon;
var
  tnid: TNOTIFYICONDATA ;
begin
  with tnid do
  begin
    cbSize := sizeof(TNOTIFYICONDATA);
    Wnd := Form1.handle;
    uID := 1;
    uFlags := NIF_MESSAGE or NIF_ICON or NIF_TIP;
    uCallbackMessage := WM_TASKBAREVENT;
    hIcon := application.icon.handle;
  end;

  strcopy(tnid.szTip,'Tooltipp');
  Shell_NotifyIcon(NIM_ADD, @tnid);
end;

procedure TaskBarRemoveIcon;
var
  tnid: TNOTIFYICONDATA ;
begin
  tnid.cbSize := sizeof(TNOTIFYICONDATA);
  tnid.Wnd := Form1.handle;
  tnid.uID := 1;
  Shell_NotifyIcon(NIM_DELETE, @tnid);
end;
Danke schonmal im Vorraus.

MFG Doc Morelli
  Mit Zitat antworten Zitat