No, there's no problem. A typed constant is allocated just like a global variable (or a static local variable in C). The syntax is hackish, but the functionality is nice, indeed.
-Flávio 2008/10/28 Jalal <[EMAIL PROTECTED]>: > 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. > > That is, the SHOWED_FIRST_TIME variable should be declared in the class > definition of the form. > > 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. > > Dave Coventry rašė: >> Hi, >> >> How can I tell when my application has loaded and I can start >> initializing some of the form elements? >> >> At the moment I place all of the initialization routines in the >> FormCreate but quite often I get an 'external SIGSEHV' exception > as >> the mouse generates a false onSelection event on a StringGrid, >> presumably because the StringGrid has yet to be fully loaded. > > If form is non modal then I do that in OnShow event, like this: > > // when form appears > procedure TfrMain.FormShow(Sender: TObject); > const > SHOWED_FIRST_TIME: Boolean=False; > begin > if (not SHOWED_FIRST_TIME) then begin > SHOWED_FIRST_TIME:=True; > > // initializing > > end; > end; > > -- > Valdas Jankūnas > > _______________________________________________ > Lazarus mailing list > Lazarus@lazarus.freepascal.org > http://www.lazarus.freepascal.org/mailman/listinfo/lazarus > > _______________________________________________ Lazarus mailing list Lazarus@lazarus.freepascal.org http://www.lazarus.freepascal.org/mailman/listinfo/lazarus