Skip to content

GetFloatProp

Return value of floating point property

Declaration

Source position: typinfo.pp line 927

  function GetFloatProp(Instance: TObject; PropInfo: PPropInfo) : Extended;
  function GetFloatProp(Instance: TObject; const PropName: string)
                        : Extended;

Description

GetFloatProp returns the value of the float property described by PropInfo or with name Propname for the object Instance. All float types are converted to extended.

Errors

No checking is done whether Instance is non-nil, or whether PropInfo describes a valid float property of Instance. Specifying an invalid property name in PropName will result in an EPropertyError exception.

See also

Name Description
GetEnumProp Return the value of an enumeration type property.
GetInt64Prop return value of an Int64 property
GetMethodProp Return value of a method property
GetObjectProp Return value of an object-type property.
GetOrdProp Get the value of an ordinal property
GetSetProp Return the value of a set property.
GetStrProp Return the value of a string property.
SetFloatProp Set value of a float property.

Example

program example4;
{ This program demonstrates the GetFloatProp function }
{$mode objfpc}
uses rttiobj,typinfo;
Var
  O : TMyTestObject;
  PI : PPropInfo;
begin
  O:=TMyTestObject.Create;
  Writeln('Real property : ');
  PI:=GetPropInfo(O,'RealField');
  Writeln('Value            : ',O.RealField);
  Writeln('Get (name)       : ',GetFloatProp(O,'RealField'));
  Writeln('Get (propinfo)   : ',GetFloatProp(O,PI));
  SetFloatProp(O,'RealField',system.Pi);
  Writeln('Set (name,pi)    : ',O.RealField);
  SetFloatProp(O,PI,exp(1));
  Writeln('Set (propinfo,e) : ',O.RealField);
  Writeln('Extended property : ');
  PI:=GetPropInfo(O,'ExtendedField');
  Writeln('Value            : ',O.ExtendedField);
  Writeln('Get (name)       : ',GetFloatProp(O,'ExtendedField'));
  Writeln('Get (propinfo)   : ',GetFloatProp(O,PI));
  SetFloatProp(O,'ExtendedField',system.Pi);
  Writeln('Set (name,pi)    : ',O.ExtendedField);
  SetFloatProp(O,PI,exp(1));
  Writeln('Set (propinfo,e) : ',O.ExtendedField);
  O.Free;
end.