El tema de los eventos, es un tema muy repetido en el foro, aquí tienes un ejemplo:
http://www.clubdelphi.com/foros/show...&threadid=4795
El tema de destruír estos objetos, tienes varias formas de hacerlo, si el Owner de los controles es el Form, este se encargará automáticamente de eliminar todos sus objetos. Otra opción muy común, sobre todo para objetos no persistentes, es en el Destroy de form, encargarnos manualmente de destruír todos los objetos, para tu caso tendrías que recorrer el Array y hacer un Free de cada uno de los elementos del mismo.
Saludos!