I'm using Delphi 7 Enterprise and I've finally tracked down why some properties that can be changed in the object inspector don't have any effect.

 

I’ve written a component that contains a real Published Property X of type REAL:

 

 - X is initialised in the Constructor to +1

 

 - I change X to ZERO using the object inspector

 

 - I run the program and find that X still has its initialised value (+1)

 

AAARGH - it's taken quite a while to find out why and it's (as usual) a single line buried in the help:

 

"STORAGE SPECIFIERS"

  "For Reals, pointer and strings there is an implicit default value of ZERO"

 

And it seems the values aren't streamed from the object inspector into the .DFM file unless they differ from the ASSUMED default (which is to be ZERO but in my case is actually +1 !!!

 

To me this seems like a definite bug - you change a value in the Object Inspector at Design-time but it doesn't make it to the .DFM file and has no effect on the executable.

 

Setting STORED on the Property line doesn't help and for Reals you can't specify a DEFAULT value).

 

Has this been fixed in later versions of Delphi?

 

Any suggested work-arounds (such as storing 1E-8 instead of zero). This component has several sets of X/Y/Z coords and I really don’t want have to maintain another a dozen tiny procedures each of which changes zero to 1E-8 …

 

Thanks

Giovanni

=====================================================================

Giovanni Moretti  |  Institute of Information Sciences and Technology

Senior Lecturer   |  Massey University, Palmerston North, New Zealand

Computer Science  |  Ph 64-6-3505799x2474 =Fax 64-6-3502259 == ZL2BOI

=====================================================================

http://www-ist.massey.ac.nz/moretti     mailto:[EMAIL PROTECTED]

 

_______________________________________________
Delphi mailing list
[email protected]
http://ns3.123.co.nz/mailman/listinfo/delphi

Reply via email to