Documentation says it's a type float for that parameter.
On my tests, It returns those large values just fine passed to a single type 
parameter.
2 billion is the max I can put into the Object Inspector without runtime 
errors. Of course I can easily put in a higher value. During design time 
there is no problem, only when it runs does it cause a problem then when I 
click ok it terminates the program, returns to design time, then tells me 
the same problem and asks if I want to ingore or cancel. If i select ignore 
it deletes controls off the form that have nothing to do with it lol. I also 
noticed that even on the interface in trueSpace, the floating point value at 
some point when reaching that limit turns into a integer. The interface uses 
a sliding verticle line on a gradient colored bar. I have such a control but 
it'll have the same issues unless I have it ignore the "max" property.

I also been finding memory leaks with the TListview under the Controls unit 
using Memcheck. It's doesnt always happen though. Delphi is very screwy, I'd 
use vc++ if it wasn't so damn archaic when making custom windows.

----- Original Message ----- 
From: "Rob Kennedy" <[EMAIL PROTECTED]>
To: "Delphi-Talk Discussion List" <[email protected]>
Sent: Friday, November 25, 2005 11:24 AM
Subject: Re: real type range problem


> Richard R wrote:
>> Hello. I am making software extension for Caligari's Truespace which
>> supports values for some physics properties that have a max of
>> 6.9814636e+012 ( i think that spells out to be 6981463600000) This is
>> probably a 64 bit type value.
>
> Probably? What does the documentation say it is?
>
> If it's an integer type, than it probably is an Int64. If it's a
> floating-point type, then it might be Single; Single supports 8
> significant digits, which is what the number has in scientific notation.
> Expanding it to an integer type makes up five digits of precision that
> the original notation didn't have.
>
>> I have a custom control called tsxSpinEdit
>> which is a number editor. I have one for integer type and one for real 
>> type.
>> Even if I change the value type to Currency I still get an EReadError
>> Invalid property value when it runs.
>
> If you just change the type of a class's property, then when the
> streaming system next reads that property's value form a DFM resource,
> the data type in the DFM won't match the type of the property. Delete
> the property value from the DFM, load the DFM in the IDE, and then save
> it. Now the property should get stored using the format for the new
> property type. Even without changing the DFM, you could simply load the
> form in the IDE, press the Ignore button when it displays the EReadError
> exception message, and then re-save the form. The format should take
> care of itself.
>
>> Is there a way to make delphi
>> compatible with this value?
>
> Any of Delphi's floating-point types should be able to hold the value
> you mention. Note that Currency is not a floating-point type. It's an
> Int64 scaled by 10000.
>
>> The largest I can use is 2E9 without an error.
>
> Exactly 2 billion, or 2147483647? The latter value is the maximum signed
> 32-bit integer value.
>
> -- 
> Rob
> __________________________________________________
> Delphi-Talk mailing list -> [email protected]
> http://www.elists.org/mailman/listinfo/delphi-talk
> 
__________________________________________________
Delphi-Talk mailing list -> [email protected]
http://www.elists.org/mailman/listinfo/delphi-talk

Reply via email to