Um auf die Aktionen des Anwenders zu reagieren, benötigen wir jetzt unsere eigene Nachricht "WM_TNAMSG":
WM_TNAMSG:
case lp of
WM_RBUTTONUP:
begin
// Popupmenü erzeugen
end;
end;
Klickt der Anwender also mit der rechten Maustaste auf unser Symbol, dann wird das Popupmenü erzeugt und angezeigt, und er hat die Auswahl. Beachten Sie, dass wir hier "WM_RBUTTONUP" benutzen. Das heißt, der Anwender muss die rechte Maustaste erst wieder loslassen; erst dann sieht er das Menü.
Zu guter Letzt wollen wir sowohl Symbol als auch Tooltipp-Text ändern. Dafür laden wir einfach nur ein neues Icon, definieren einen neuen Text und modifizieren das Symbol. Und all das passiert bei einem Doppelklick mit der linken Maustaste:
WM_TNAMSG:
case lp of
WM_LBUTTONDBLCLK:
begin
NID.hIcon := LoadIcon(0,IDI_WARNING);
lstrcpy(NID.szTip,'geänderter Tooltipp-Text');
Shell_NotifyIcon(NIM_MODIFY,@NID);
end;
end;