I have functions I want to perform after my app has finished initialising and the main form has been created. I did have the code (call it ProcedureX) in the forms OnShow event, but I have just noticed that it is being called twice, because OnShow is firing twice. It fires when the main program DPR calls:

```
Application.CreateForm(TMainForm, MainForm) ;  

```

as I would expect. But after that, when I read stuff from an INI file that includes the forms on-screen position, I have a call:

```
MainForm.position := poScreenCenter ;

```

This, it would appear fires the OnShow event again.

Where can I put my call to ProcedureX, which must only be called once, and which needs the main form to be created before it can execute?