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

# TScrollBar

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

A control that allows the user to scroll the content in an associated control by moving a slider.

## Declaration

Source position: stdctrls.pp line 120

`type TScrollBar = class(TCustomScrollBar)`
`published`
`property Align: TAlign;` |  | Specifies the placement of the control on its Parent control.
`property Anchors: TAnchors;` |  | The set of anchor definitions for this control.
`property BidiMode: TBiDiMode;` |  | Indicates whether text controls use in bi-directional reading.
`property BorderSpacing: TControlBorderSpacing;` |  | Determines the inner and outer border spacing for this control.
`property Constraints: TSizeConstraints;` |  | Contains the minimum and maximum Width and Height for the control.
`property DoubleBuffered: Boolean;` |  | When enabled, it reduces flicker when the control is painted.
`property DragCursor: TCursor;` |  | The cursor shape shown during a drag operation.
`property DragKind: TDragKind;` |  | Indicates the action performed for a drag operation: drag-and-drop or drag-and-dock.
`property DragMode: TDragMode;` |  | Determines how a drag operation is started for the control.
`property Enabled: Boolean;` |  | Determines whether the control responds to mouse or keyboard input.
`property Kind: TScrollBarKind;` |  | Contains the scrollbar orientation, horizontal or vertical.
`property LargeChange: TScrollBarInc;` |  | The distance to scroll on an click beneath the slider.
`property Max: Integer;` |  | The maximum value for the bottom or right position depending on orientation.
`property Min: Integer;` |  | The minimum value for the top or left position depending on orientation.
`property PageSize: Integer;` |  | The size of the slider relative to the total scroll range.
`property ParentBidiMode: Boolean;` |  | Indicates whether the BiDiMode settings in the Parent control are used.
`property ParentDoubleBuffered: Boolean;` |  | Value for the DoubleBuffered property in a Parent 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 Position: Integer;` |  | The position of the slider in the scrollbar.
`property ShowHint: Boolean;` |  | Enables Hint display for the control.
`property SmallChange: TScrollBarInc;` |  | The distance to scroll when the up or down button is clicked.
`property TabOrder: TTabOrder;` |  | Indicates the navigation order for the control when the user presses the Tab or Shift+Tab key.
`property TabStop: Boolean;` |  | Enables keyboard navigation using the Tab or Shift+Tab keys.
`property Visible: Boolean;` |  | Allows the control, and all of its children, to be displayed or hidden.
`property OnChange: TNotifyEvent;` |  | Event handler signalled when the value in Position, Min, Max, or PageSize is changed.
`property OnContextPopup: TContextPopupEvent;` |  | Invoked when a context-sensitive pop-up menu is requested.
`property OnDragDrop: TDragDropEvent;` |  | Event handler signalled when an object is dropped onto the control.
`property OnDragOver: TDragOverEvent;` |  | Event handler signalled when a control is dragged over the control instance.
`property OnEndDrag: TEndDragEvent;` |  | Event handler signalled for the end of a drag-drop operation.
`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 OnScroll: TScrollEvent;` |  | Event handler signalled when scrollbar messages are applied.
`property OnStartDrag: TStartDragEvent;` |  | Event handler signalled for the start of a dragging operation.
`property OnUTF8KeyPress: TUTF8KeyPressEvent;` |  | Handler for a character entered by the user.
`end;`

## Inheritance

`TScrollBar` |  | A control that allows the user to scroll the content in an associated control by moving a slider.
`TCustomScrollBar` |  | The base class for TScrollBar.
`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

A control that allows the user to scroll the content in a windowed control, by moving a slider.

TScrollBar appears as a long rectangular track bar, within which a smaller contrasting block or slider can move up and down (or from side to side in a horizontal ScrollBar). It has small triangular indicators or pointers on one or both ends of the bar, depending on the widgetset.

Clicking with the mouse on one of the pointers moves the slider a small distance (SmallChange) in the specified direction. Clicking with the mouse in the blank area of the scrollbar above or below the slider makes the slider move by a larger increment (LargeChange).

The slider can also be moved by clicking on it with the mouse, and holding down the button while moving the mouse. The slider then follows the mouse until the button is released.

If the mouse has a scrollwheel, the slider also can be moved by rotating the wheel.

The arrow keys or the Page Up/Page Down keys on the keyboard can be used to move the slider, too.

The location of the slider along the track is held in the Position property. It's the programmer's responsibility to ensure that the content of the window is scrolled to the new Position of the scrollbar.

## See also

TCustomScrollBar.OnChange |  | Event handler signalled when the value in Position, Min, Max, or PageSize is changed.
HowToUseStdCtrls |  | How to use StdCtrls, ComCtrls or ExtCtrls.