General

6.235 Inserire un icona nella SysTray di Windows senza SubClassing
  Alessandro Baraldi

Normalmente per gestire un'icona nella TRAYAREA serve ricorrere al SubClassing per intercettare i messaggi inviati dall'icona.

Il database allegato a questa FAQ nasce dal seguente articolo della KB per VB6:
http://support.microsoft.com/?scid=176085

L'API ShellNotifyIcon consente anche di sfruttare una funzione di CALLBACK che rilancia i messaggi del mouse relativi all'Handle dell'icona nell'evento MOUSEMOVE della nostra form.
Questo ci semplifica notevolmente la cosa in quanto non dover ricorrere al SubClassing, tecnica un pò critica per Access, ci rende decisamente più sicuri nell'utilizzo di questa opzione.

Il problema che abbiamo è che al di fuori dell'area della nostra form non possiamo generare un Menù Popup nativo, quindi per gestire eventuali interazioni con gli eventi del mouse sull'icona abbiamo 2 possibilità:
1) Intercettare i messaggi inviati nella variabile X dell'evento MOUSEMOVE e gestirli di conseguenza in base alle nostre esigenze.
2) Sfruttare la possibilità di creare popu-menù a runtime con le API.
Il demo allegato a questa FAQ contiene entrambe le soluzioni.

Download:
 
  GEN_ICO_SYSTRAY.zip (53Kb) MSAccess2002 database


Se pensate di avere del materiale freeware interessante e volete pubblicarlo, allora leggete qui.