Gracias a los dos por las ideas aportadas.
La verdad es que en Lazarus hay unos componentes llamados Luicontrols (LuiPack) que tienen uno llamado dropdownmanager que hace exactamente eso con cualquier elemento visual y funciona muy bien. Desgraciadamente mis conocimientos no dan para adaptarlo a Delphi, a pesar de ser poco código.
https://code.google.com/p/luipack/so...ownmanager.pas
Imagino que tiene que haber forma de interceptar de algún modo el evento click a nivel global y saber si está (por coordenadas) dentro o fuera del panel.
A ver si me explico. La aplicación genera unos mensajes (alertas) que aparecen en pantalla dentro de un panel. Dicho panel tiene un botón de cerrar, pero me han pedido que funcione como el previsualizador de imagenes de las webs, que al dar click fuera de ellas se cierran.
El concepto es bastante sencillo, pero no acierto a dar con algo que funcione como deseo.
Probaré lo que comentais.