Simplemente asigna a la propiedad OnClick de cada botón el método que desees:
Código Delphi
[-]
bnt[i].OnClick := BotonClick;
BotonClick deberá ser un método declarado con los mismos parámetros del evento:
Código Delphi
[-]
TForm1 = class(TForm)
public
procedure BotonClick(Sender: TObject);
end;
Para lo de los índices puedes usar la propiedad Tag de cada botón:
Así, en el método BotonClick usarías algo como:
Código Delphi
[-]
case TButton(Sender).Tag of
1:
2:
3:
...
end;
// Saludos