[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'Controls' (#lcl)

# TControlStyle

Set type used to store values from the TControlStyleType enumeration.

## Declaration

Source position: controls.pp line 331

`type TControlStyle = set of (`
`csAcceptsControls,` |  | Indicates that one can add child controls to a control.
`csCaptureMouse,` |  | Control focus and style changes when under the mouse cursor.
`csDesignInteractive,` |  | Control handles mouse events at design-time.
`csClickEvents,` |  | Control responds to mouse click events.
`csFramed,` |  | Control has a 3D frame; used on scroll bars in the current LCL version.

`csSetCaption,`

Indicates that the Caption for a control is updated when a value is assigned to the Name property. As long as Name=Text, changing the Name will set the Caption. When, for example, a button's Name and Caption have the value 'Button1' and the Name is changed to 'Button2' then the Caption is changed as well. When Name and Caption differ, this flag has no effect. This flag has no effect when loading the control using the LCL component streaming mechanism.

`csOpaque,` |  | Control is drawn with a non-transparent background; implementation is widgetset-specific.
`csDoubleClicks,` |  | Indicates that the control understands mouse double click events.
`csTripleClicks,` |  | Indicates that the control understands mouse triple click events.
`csQuadClicks,` |  | Indicates that the control understands mouse quadruple click events.
`csFixedWidth,` |  | Indicates that the control cannot change its width.
`csFixedHeight,` |  | Indicates that the control cannot change its height (e. g. a combo-box).
`csNoDesignVisible,` |  | Indicates that the control is invisible in the form designer.
`csReplicatable,` |  | Control can be drawn using the TWinControl.PaintTo method.
`csNoStdEvents,` |  | Key messages are handler by widgetset classes instead of control events.
`csDisplayDragImage,` |  | Display images from the drag imagelist during a drag operation over the control.
`csReflector,` |  | Control responds to size, focus, and dialog messages and can be used as an ActiveX control (Windows).
`csActionClient,` |  | Control includes support for TBasicAction.
`csMenuEvents,` |  | Control responds to menu and menu item events.
`csNoFocus,` |  | Indicates that the control or form cannot receive focus.
`csNeedsBorderPaint,` |  | Indicates that the client area for the control needs to be redrawn including its borders. LCL controls do not use this value in their control styles property. Implemented for JVCL controls and its theme engine.
`csParentBackground,` |  | Indicates whether the background for the parent control is used to fill the client area in the control. Used for controls which have a window handle for the parent control and do not use csOpaque in their control style. On some platforms (like WinXP and Windows 7), csParentBackground can be used to reduce flicker when the parent control is resized.
`csDesignNoSmoothResize,` |  | WYSIWYG resizing is not used on the design surface.
`csDesignFixedBounds,` |  | Control cannot be moved or resized on the designer surface.
`csHasDefaultAction,` |  | Control executes a default action when the Space or Enter key is pressed.
`csHasCancelAction,` |  | Control executes an action when the Escape key is pressed or the form/dialog is closed using the window decoration.
`csNoDesignSelectable,` |  | Control cannot be selected at design-time.
`csOwnedChildrenNotSelectable,` |  | Child controls owned by this control are not selectable in the designer.
`csAutoSize0x0,` |  | If the preferred size is 0x0 pixels then the control is auto-sized; the default minimum client size will be 1x1 pixels.
`csAutoSizeKeepChildLeft,` |  | When AutoSize is True, do not move child controls horizontally.
`csAutoSizeKeepChildTop,` |  | When AutoSize is True, do not move child controls vertically.
`csRequiresKeyboardInput` |  | Indicates that a control requires keyboard input to be utilized by the user. Used for the Android (and other) platforms to activate the virtual keyboard when an active control needs to respond to input values. Used primarily for devices that do not have a hardware keyboard.
`);`

## Description

TControlStyle is a set type used to store zero or more values from the TControlStyleType enumeration. Values from TControlStyleType are included in the set when the corresponding feature or behavior is enabled for a control.

TControlStyle is the type used to implement the ControlStyle property in TControl and descendent classes.

## See also

TControlStyleType |  | Enumerated type with values for features or behaviors for a control.
TControl.ControlStyle |  | Contains style flags which control the features or behaviors enabled for the control.