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

# TCustomNotebook

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

TCustomNotebook: The base type for TNotebook and TPageControl

## Declaration

Source position: extctrls.pp line 136

`type TCustomNotebook = class(TWinControl)`
`protected`
`PageClass: TCustomPageClass;` |  | PageClass - the class of page that is included in this NoteBook
`protected`
`class procedure WSRegisterClass; override;` |  | WSRegisterClass - Register this Class for the current Widget Set
`protected`
`procedure CreateWnd; override;` |  | CreateWnd - Creates the Window
`procedure DoCreateWnd; virtual;` |  | DoCreateWnd - perform th ecode for method CreateWnd
`procedure DoChange; virtual;`
`procedure Change; virtual;` |  | Change - perform the code for OnChanging
`procedure Loaded; override;` |  |
`procedure ReadState(); override;` |  |
`function DialogChar(); override;` |  | DialogChar - a LCL Key Message; returns True if a Dialog character has an associated message
`procedure ShowControl(); override;` |  | ShowControl - method for showing the specified control
`procedure UpdateTabProperties; virtual;` |  | UpdateTabProperties - apply all pending changes to the Tab
`function ChildClassAllowed(); override;` |  | ChildClassAllowed - returns True if the given child class is permitted
`protected`
`class function GetControlClassDefaultSize; override;` |  | Find the default size for this class of controls (by reference to parents)
`protected`
`procedure Notification(); override;`
`property ActivePageComponent: TCustomPage; [rw]` |  | ActivePageComponent - the actual contents of the currently selected Page
`property ActivePage: String; [rws]` |  | ActivePage - the name (string) of the Page that is currently selected and is available for interaction
`public`
`constructor Create(); override;` |  | Create - constructor for TCustomNotebook: calls inherited Create creates a pagelist, then sets initial bounds and default values for local variables and properties
`destructor Destroy; override;` |  | Destroy - destructor for TCustomNotebook: clears and frees pages and list, then calls inherited Destroy
`function TabIndexAtClientPos();` |  | TabIndexAtClientPos - the index value of the Tab at the specified position ClientPos
`function TabRect();`
`function GetImageIndex(); virtual;` |  | GetImageIndex - find the index number of the image associated with the specified Page index
`function IndexOf();` |  | IndexOf - returns the index value of a specified page
`function CustomPage();` |  | CustomPage - returns the page specified by Index
`function CanChangePageIndex; virtual;` |  | CanChangePageIndex - determine whether it is permissible to change the index of the page
`function GetMinimumTabWidth; virtual;` |  | GetMinimumTabWidth - find the smallest permissible tab width
`function GetMinimumTabHeight; virtual;` |  | GetMinimumTabHeight - find the least permissible height for a tab
`function GetCapabilities; virtual;` |  | GetCapabilities - returns the set of capabilities
`procedure DoCloseTabClicked(); virtual;` |  | DoCloseTabClicked - perform the action associated with clicking the Close tab for this page (OnCloseTabClicked)
`property Images: TImageList; [rw]` |  | Images - the list of images associated with the pages of this notebook
`property MultiLine: Boolean; [rw]`
`property OnChanging: TTabChangingEvent; [rw]` |  | OnChanging - event handler for changing a tab
`property OnCloseTabClicked: TNotifyEvent; [rw]` |  | OnCloseTabClicked - event handler for clicking on the Close button to close a tab
`property OnGetImageIndex: TTabGetImageEvent; [rw]` |  | OnGetImageIndex - event handler for getting an image index
`property OnPageChanged: TNotifyEvent; [rw]` |  | OnPageChanged - event handler for a change in the page
`property Options: TNoteBookOptions; [rw]` |  | The set of Options for the Notebook: Show close buttons on the tabs, multi-line tabs
`property Page: TCustomPage; [r]` |  | The current Page of the Notebook
`property PageCount: Integer; [r]` |  | PageCount - the number of Pages in the Notebook
`property PageIndex: Integer; [rw]` |  | PageIndex - Index number of the current page
`property PageList: TList; [r]` |  | PageList - the Indexed list of the Pages in the Notebook
`property Pages: TStrings; [rw]` |  | The contents of the Pages in the Notebook (as Strings)
`property ShowTabs: Boolean; [rw]` |  | ShowTabs - if True (default condition), show the tabs for each page
`property TabPosition: TTabPosition; [rw]` |  | TabPosition - top, bottom, left or right
`published`
`property TabStop;` |  | Is the control in the sequence of controls accessed by successive presses of the Tab key?
`end;`

## Inheritance

`TCustomNotebook` |  | TCustomNotebook: The base type for TNotebook and TPageControl
`TWinControl`
`TControl`
`TLCLComponent` |  | TLCLComponent - base class for LCL components
`TComponent,IUnknown,IInterfaceComponentReference`
`TPersistent`
`TObject`

## Description

TCustom Notebook: The base type for TNotebook and TPageControl

A notebook consists of several Pages, usually of similar type and kept indexed. They may contain Images listed in a table. One page is displayed at a time, but the other pages are indicated by tabs which may have their names on them, and a different page can be selected for display by clicking its tab

## See also

Multi-PageControls |  | Multi-PageControls - controls that offer a selection of alternative pages for display

The latest version of this document can be found at lazarus-ccr.sourceforge.net .