Ralmente no "creas el evento", lo que haces es asignarle un procedimiento a un evento o propiedad del tipo "procedure of object":
Código:
procedure TMiForm.OnButtonClick(Sender: TObject);
begin
ShowMessage('Hola!!');
end
procedure TMiForm.MiFormCreate(Sender: TObject);
begin
FButton := TButton.Create;
FButton.OnClick := OnButtonClick;
end
Saludos!