{...}
const
IC_CLICK = WM_APP + 201;
var
NIM : TNotifyIconData; //das findet er komischerweise jetzt nichmeher
procedure TForm1.Systray(var sMsg: TMessage);
begin
// Vorgang: Klick auf das Icon neben der Uhr und Anzeige der Anwendung
inherited;
if (sMsg.LParam = WM_LBUTTONDOWN) then begin
Show;
Shell_NotifyIcon(NIM_DELETE, @NIM);
Application.Restore; //zeigt die Anwendung wieder an
end;
end;
procedure TForm1.ApplicationEvents1Minimize(Sender: TObject);
begin
//Vorgang: Minimieren der Anwendung, Entfernung des Taskleisteneintrags
//und Hinzufügen des Programmicons neben der Uhr
Form1.FormStyle:=fsStayOnTop;
Hide;
with NIM do begin
cbSize := SizeOf (nIM);
Wnd :=
Handle;
uID := 0;
uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP;
uCallbackMessage := IC_CLICK;
hIcon := Application.Icon.Handle;
szTip := 'Windows Wecker';
end;
Shell_NotifyIcon(NIM_ADD, @NIM);
end;