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

# TNotebook

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

TNotebook is a container for a group of related pages.

## Declaration

Source position: extctrls.pp line 120

`type TNotebook = class(TCustomControl)`
`public`
`constructor Create(); override;` |  | Constructor for the class instance.
`destructor Destroy; override;` |  | Destructor for the class instance.
`procedure ShowControl(); override;` |  | Displays the specified control (page object).
`function IndexOf();` |  | Gets the ordinal position in the list of pages for the specified page object.
`property ActivePage: string; [r]` |  | Gets the name for the active page object in the notebook control.
`property ActivePageComponent: TPage; [r]` |  | Contains the TPage instance representing the active page in the notebook control.
`property Page []: TPage; [r]` |  | Provides access to a page object in the notebook control by its ordinal position in the list of pages.
`property PageCount: Integer; [r]` |  | Indicates the number of page objects defined for the notebook control.
`published`
`property PageIndex: Integer; [rw]` |  | Ordinal position for the active page in the notebook control.
`property Pages: TStrings; [rws]` |  | Contains the page names and TPage instances defined for the notebook control.
`property Align: TAlign;` |  | Specifies the placement of the control on its Parent control.
`property AutoSize: Boolean;` |  | Allows automatic adjustment of the size for the control, according to its content.
`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 Color: TColor;` |  | The background color for the control.
`property Constraints: TSizeConstraints;` |  | Contains the minimum and maximum Width and Height for the control.
`property DragCursor: TCursor;` |  | The cursor shape shown during a drag operation.
`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 ParentBiDiMode: Boolean;` |  | Indicates whether the BiDiMode settings in the Parent control are used.
`property PopupMenu: TPopupMenu;` |  | A context-sensitive menu that pops up when the right mouse button is clicked over this control.
`property TabOrder: TTabOrder;` |  | Indicates the navigation order for the control when the user presses the Tab or Shift+Tab key.
`property TabStop: Boolean;`
`property OnChangeBounds: TNotifyEvent;` |  | Event handler signalled when the Bounds for the control have been 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 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 OnResize: TNotifyEvent;` |  | Notification handler for a resize of the control.
`property OnStartDrag: TStartDragEvent;` |  | Event handler signalled for the start of a dragging operation.
`end;`

## Inheritance

`TNotebook` |  | TNotebook is a container for a group of related pages.
`TCustomControl` |  | The base class for windowed controls which paint themselves.
`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

TNotebook is a control which can hold a series of pages order by their position in the list of pages. Only one page is shown at a time.

This control is entirely custom drawn, which means that it is available - and looks the same - in any widgetset which supports TCustomControl. The pages are containers which can hold other controls. The page control does not display a tab which indicates the active page. If you are looking for a control with tabs representing each of the pages, please see TPageControl instead.

To use a Notebook, select its icon from the 'Additional' tab of the Component Palette and place it on the Form. Adjust its size, position, alignment and anchoring as required, by moving the object on the Form or by using the Object Inspector.

Pages are added to the NoteBook by selecting the control and right-clicking with the mouse to get a pop-up menu whose first item is 'Add Page', or by using the Pages property editor in the Object Inspector. Pages already in the NoteBook can be edited by selecting the appropriate ActivePage in the Object Inspector and modifying its properties or adding additional components to the Page.

## See also

TPage |  | TPage: One of the pages in a tabbed Notebook.
Multi-Page Controls |  | MultiPageControls - controls that offer a selection of alternative pages for display.
How to use StdCtrls, ComCtrls or ExtCtrls. |  | How to use StdCtrls, ComCtrls or ExtCtrls.