Hola flystar, una forma de llenar un arreglo dinamico podría ser utilizando la función VarArrayOf:
Código Delphi
[-]
miArray : Array of Integer;
begin
SetLength(miArray, 3);
miArray := VarArrayOf([10,20,30,40]);
pero creo que con TButtons no va a funcionar, porque se necesita un Variant.
También puedes llenar tu arreglo de TButtons como te indica Archer.
Saluditos