[Overview][Classes][Procedures and functions][Index] | Reference for unit 'Spin' (#lcl)

# TFloatSpinEdit

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Implements a spin edit control using a floating point value.

## Declaration

Source position: spin.pp line 89

`type TFloatSpinEdit = class(TCustomFloatSpinEdit)`
`public`
`property AutoSelected: Boolean;` |  | Indicates whether the selected content in the control has been automatically selected.
`published`
`property Align: TAlign;` |  | Specifies the placement of the control on its Parent control.
`property Alignment: TAlignment;` |  | The horizontal alignment for the text in the control (left, right, or centered).
`property Anchors: TAnchors;` |  | The set of anchor definitions for this control.
`property AutoSelect: Boolean;` |  | Enables auto-selection of text when focused.
`property AutoSize: Boolean;` |  | Allows automatic adjustment of the size for the control, according to its content.
`property BorderSpacing: TControlBorderSpacing;` |  | Determines the inner and outer border spacing for this control.
`property Color: TColor;` |  | The background color for the control.
`property Constraints: TSizeConstraints;` |  | Contains the minimum and maximum Width and Height for the control.
`property DecimalPlaces: Integer;` |  | Number of the decimal places displayed in the spin edit control.
`property EditorEnabled: Boolean;` |  | Indicates whether the value for the control can be entered directly into its edit box.
`property Enabled: Boolean;` |  | Determines whether the control responds to mouse or keyboard input.
`property Font: TFont;` |  | The font to be used for text display in this control.
`property Increment: Double;` |  | Amount applied to the control value when the up or down arrow button is pushed.
`property MaxValue: Double;` |  | Maximum value allowed in the spin edit control.
`property MinValue: Double;` |  | Minimum value allowed in the spin edit control.
`property ParentColor: Boolean;` |  | Uses the Color from the Parent control, when enabled.
`property ParentFont: Boolean;` |  | Indicates if the Font from the Parent control is used in the control.
`property ParentShowHint: Boolean;` |  | If True, the value of ShowHint for the control will be the same as the one from the Parent. Default is True.
`property PopupMenu: TPopupMenu;` |  | A context-sensitive menu that pops up when the right mouse button is clicked over this control.
`property ReadOnly: Boolean;` |  | Indicates if the user is prevented from changing the value for the Text in the control.
`property ShowHint: Boolean;` |  | Enables Hint display for the control.
`property TabStop: Boolean;` |  | Enables keyboard navigation using the Tab or Shift+Tab keys.
`property TabOrder: TTabOrder;` |  | Indicates the navigation order for the control when the user presses the Tab or Shift+Tab key.
`property Value: Double;` |  | The floating point value for the spin edit control.
`property Visible: Boolean;` |  | Allows the control, and all of its children, to be displayed or hidden.
`property OnChange: TNotifyEvent;` |  | The OnChange event is fired when the value for the spin edit has changed.
`property OnChangeBounds: TNotifyEvent;` |  | Event handler signalled when the Bounds for the control have been changed.
`property OnClick: TNotifyEvent;` |  | Notification handler for mouse clicks.
`property OnEditingDone: TNotifyEvent;` |  | Event handler signalled when editing is completed for the control.
`property OnEnter: TNotifyEvent;` |  | Event handler signalled when the control receives focus.
`property OnExit: TNotifyEvent;` |  | Event handler signalled when the control loses focus.
`property OnKeyDown: TKeyEvent;` |  | Event handler signalled for key down keyboard events.
`property OnKeyPress: TKeyPressEvent;` |  | Event handler signalled for character data entered by the user.
`property OnKeyUp: TKeyEvent;` |  | Event handler signalled when a key up event has occurred for the control.
`property OnMouseDown: TMouseEvent;` |  | Event handler signalled when a mouse down event is handled for the control.
`property OnMouseEnter: TNotifyEvent;` |  | Event handler signalled when the mouse pointer has entered the control.
`property OnMouseLeave: TNotifyEvent;` |  | Event handler signalled when the mouse pointer has left the control.
`property OnMouseMove: TMouseMoveEvent;` |  | Event handler signalled when the mouse pointer is moved in the control.
`property OnMouseUp: TMouseEvent;` |  | Event handler signalled when a mouse up event is handled for the control.
`property OnMouseWheel: TMouseWheelEvent;` |  | Event handler for mouse wheel turned.
`property OnMouseWheelDown: TMouseWheelUpDownEvent;` |  | Event handler signalled for a downward movement of the mouse wheel.
`property OnMouseWheelUp: TMouseWheelUpDownEvent;` |  | Event handler signalled for an upward movement of the mouse wheel.
`property OnMouseWheelHorz: TMouseWheelEvent;` |  | Event handler signalled for a horizontal movement of the mouse wheel.
`property OnMouseWheelLeft: TMouseWheelUpDownEvent;` |  | Event handler signalled for a leftward movement of the mouse wheel.
`property OnMouseWheelRight: TMouseWheelUpDownEvent;` |  | Event handler signalled for a rightward movement of the mouse wheel.
`property OnResize: TNotifyEvent;` |  | Notification handler for a resize of the control.
`property OnUTF8KeyPress: TUTF8KeyPressEvent;` |  | Handler for a character entered by the user.
`end;`

## Inheritance

`TFloatSpinEdit` |  | Implements a spin edit control using a floating point value.
`TCustomFloatSpinEdit` |  | The base class for a spin edit control using a floating point value.
`TCustomEdit` |  | The base class for controls presenting editable text.
`TWinControl` |  | Implements a windowed control which can contain other child controls.
`TControl` |  | The base class for visible controls.
`TLCLComponent` |  | The base class for LCL components which have an associated widget.
`TComponent`
?
`TObject`

## Description

TFloatSpinEdit is a TCustomFloatSpinEdit descendant which implements a float-based spin edit control. It provides an edit control where the Float value can be entered directly, and up / down buttons which can be used to increment or decrement the Value for the control.

Use the Value property to assign a floating point value to the control as a Double type. Value is a 64-bit real type in the range 5.0E-324 .. 1.7E308 (inclusive), and allows up to 15-16 digits of precision (15 digits for a negative value).

At run-time, setting Value to a number outside of the range for the real type causes Value to be updated. When neither MinValue nor MaxValue have been assigned, either -Inf or +Inf is displayed as the value for the control. If either MinValue or MaxValue has been given an explicit non-default value, the Value property is updated with corresponding range limit.

In LCL version 3.0, the floating point property editor will not allow an invalid value to be stored in the Value property at design-time. An error is raised (and handled) with the message 'Property value out of range'. The Value property is reset to 0.

LCL versions prior to 3.0 allowed the values +Inf, -Inf, and NaN to be assigned to the Value property. These values are no longer supported in LCL version 3.0 and later.

Use the MinValue and MaxValue properties to define the lower and upper limits for the Value in the control. Like Value, they are implemented as a Double type with the same range limits. An invalid value causes the property to be set to the corresponding range limit for the real type.

Use the DecimalPlaces property to specify the number of decimal digits displayed for a value not represented using the radix/precision/exponent format for the IEE 754 value.

Use the Increment property to set the value added to or subtracted from the control Value when the up or down buttons are clicked.

## Version info

Modified in LCL version 3.0 to implement range checking with floating point property editor support.

## See also

TCustomFloatSpinEdit |  | The base class for a spin edit control using a floating point value.
TSpinEdit |  | Implements an integer-based spin edit control.