<table cellspacing="0" cellpadding="0" border="0" ><tr><td valign="top" style="font: inherit;">There is a flaw in the code suggested below. To accomplish what you seem to want, the SHOWED_FIRST_TIME variable needs to be an instance variable rather than a local variable as declared below.<br><br>That is, the SHOWED_FIRST_TIME variable should be declared in the class definition of the form.<br><br>Using a local variable as below may work, but if so it works by chance due to the memory location the compiler is using for that local variable being static. In Delphi it would likely be a register variable, so the value would be unpredictable. The compiler would issue a hint too.<br><br>Dave Coventry rašė:<br>> Hi,<br>> <br>> How can I tell when my application has loaded and I can start<br>> initializing some of the form elements?<br>> <br>> At the moment I place all of the initialization routines in the<br>> FormCreate but quite often I
 get an 'external SIGSEHV' exception<br>as<br>> the mouse generates a false onSelection event on a StringGrid,<br>> presumably because the StringGrid has yet to be fully loaded.<br><br>  If form is non modal then I do that in OnShow event, like this:<br><br>// when form appears<br>procedure TfrMain.FormShow(Sender: TObject);<br>const<br>   SHOWED_FIRST_TIME: Boolean=False;<br>begin<br>     if (not SHOWED_FIRST_TIME) then begin<br>         SHOWED_FIRST_TIME:=True;<br><br>         // initializing<br><br>     end;<br>end;<br><br>-- <br>   Valdas Jankūnas<br></td></tr></table>