Sign in Join
FPDoc Onlineexperiment

TStringGrid class

In unit Grids

Implements a grid specialized for textual content.

Declaration

pascal
TStringGrid = class(TCustomStringGrid)

Inheritance

  1. TStringGrid
  2. TCustomStringGrid
  3. TCustomDrawGrid
  4. TCustomGrid
  5. TCustomControl
  6. TWinControl
  7. TControl
  8. TLCLComponent
  9. TComponent
  10. TPersistent
  11. TObject

Description

TStringGrid is a TCustomStringGrid descendant which implements a specialized grid for displaying textual content in a matrix of columns and rows.

TStringGrid is designed for use with string content stored in its cells. Internally, columns and rows in the class are mapped to TStringGridStrings instances used to store the values in the grid control. TStringGrid also allows a TObject instance to be stored for each cell in the grid using the Objects property.

TStringGrid sets the visibility for properties defined in the ancestor class. It has an overridden WSRegisterClass method to register properties (from older LCL versions) which are no longer used in LCL component streaming.

Key properties:

The ColCount and RowCount properties contain the column and row count of the grid.

The FixedCols and FixedRows properties specify the count of fixed columns or rows that are used for headings.

The column widths and row heights of the grid are accessible with the ColWidths and RowHeights properties.

The DefaultColWidth and DefaultRowHeight properties are used to specify default column widths or row heights respectively.

The colors used for the cells and other grid elements are specified in the following properties:

The GridWidth and GridHeight properties contain the dimension of the entire grid.

The ScrollBars controls the creation of scroll bars for the grid.

The LeftCol, TopRow, VisibleColCount and VisibleRowCount properties contain information about the visible area of the grid.

The Options controls options for the grid.

Key methods and events:

If the user highlights a cell of the grid, the SelectCell method is called that triggers the OnSelectCell event. The position of the highlighted cell is stored within the Col and Row property.

The MouseToCell method calculates a grid cell from a given screen position.

Huge changes to the grid should be encapsulated in calls to BeginUpdate and EndUpdate to speed up the application.

Component developers must override the DrawCell method in customized grid controls.

Grid cell selection

The location of the current (focused) cell (or row) can be changed using keyboard, mouse or through code. In order to change cell focus successfully to another position, we must test the target position to see if it is allowed to receive cell focus. When using keyboard, the property AutoAdvance performs part of the process by finding what should be the next focused cell. When using mouse clicks or moving by code, focus will not move from the current cell unless the target cell is permitted to receive focus.

The grid calls the SelectCell function to see if a cell is focusable: if this function returns true, then the target cell identified with arguments aCol and aRow is focusable (the current implementation of TCustomGrid simply returns true). TCustomDrawGrid and hence TDrawGrid and TStringGrid override this method to check first if cell is any wider than 0; normally you don't want a 0 width cell selected so a cell with these characteristics is skipped automatically in the process of finding a suitable cell. The other thing the overridden method SelectCell does is to call the user configurable event OnSelectCell: this event receives the cell coordinates as arguments and always returns a default result value of true.

Once a cell is known to be focusable and we are sure a movement will take place, first the method BeforeMoveSelection is called; this in turns triggers the OnBeforeSelection event. This method's arguments are the coordinates for the new focused cell. At this point any visible editor is hidden too. The "before" word means that selection is not yet changed and current focused coordinates can be accessed with grid.Col and grid.Row properties.

After that, the internal focused cell coordinates are changed and then MoveSelection method is called; this method's purpose is to trigger the OnSelection event if set (this is a notification that the focused cell has, by this time, already changed and cell coordinates are now available through grid.row and grid.col properties).

Note that is not good to use OnSelectCell event to detect cell focus changes, as this event will be triggered several times even for the same cell in the process of finding a suitable cell. Is better to use OnBeforeSelection or OnSelection events for this purpose.

Multi-selection

The Lazarus grids are able to extend the selection to multiple cells. The Option goRangeSelect must be active for this purpose: Now you can drag the mouse over a rectangle on the grid to select all the cells included or intersected by this rectangle. Or you can click on the cell in one corner, hold SHIFT down and either click on the opposite corner of the selection, or press the arrow keys to extend the selection in the corresponding direction.

In the default setting of the RangeSelectMode property, rsmSingle, only a single cell or cell range (rectangle of cells) can be selected, as described. The rsmMulti mode, however, allows selection of multiple and even discontiguous cells or ranges. After selecting the first cell/range as already described, hold the CTRL key down and click on the next cell or drag over the next range to be selected. Instead of dragging you can also select an additional range by pressing SHIFT (in addition to CTRL) and clicking on the opposite corner of the range or pressing the arrow keys.

The selected cells are highlighted by a different color. Note, however, that the currently focused cell has the default background color of the grid unless you set the Option goDrawFocusSelected.

Clicking somewhere on an unselected cell unselects the selected cell(s)/range( s).

If you need to access selections by code you can do this by using these TCustomGrid properties:

SelectedRange[AIndex: Integer]: TGridRect:
Returns the column/row coordinates of the corner cells of the selected range at the specified index (type TGridRect = TRect). A single selected cell is considered to be a block with equal Left and Right column and equal Top and Bottom row coordinates.
SelectedRangeCount: Integer:
The number of selected blocks.

Note that these are read-only properties, you can add and change selections only by user interaction. But you can call ClearSelections to unselect everything.

Your selection handling code must be prepared that a selected cell could be found in another selected block again. Normally this situation is prohibited in the user interface, but there are scenarios where a selection could be extended into another range so that the overlapping cells are "selected twice".

Additional information about grid usage is available on the Lazarus wiki in the following pages:

See also

Properties

ModifiedpublicIndicates whether the content in the grid cells has been changed.
InplaceEditorpublicCell editor for the grid control.
AlignpublishedSpecifies the placement of the control on its Parent control.
AllowOutBoundEventspublishedAllows a mouse click on unused space in the control, and moves the cursor to the nearest valid cell.
AlternateColorpublishedColor used for the background in alternate rows in the grid.
AnchorspublishedThe set of anchor definitions for this control.
AutoAdvancepublishedDirection used when automatically moving the selection to the next selectable cell.
AutoEditpublishedIndicates if edit mode is automatically entered when a cell is selected.
AutoFillColumnspublishedIndicates whether columns are automatically resized to fill the visible area in the grid.
BiDiModepublishedIndicates whether text controls use in bi-directional reading.
BorderSpacingpublishedDetermines the inner and outer border spacing for this control.
BorderStylepublishedIndicates the border style displayed around the control.
CellHintPrioritypublishedIdentifies how text is combined to form the Hint property.
ColorpublishedThe background color for the control.
ColCountpublishedNumber of columns in the grid.
ColRowDraggingCursorpublishedCursor shape displayed when a column or row is dragged in the grid control.
ColRowDragIndicatorColorpublishedColor used to render the drag cursor when a column or row is dragged in the grid.
ColSizingCursorpublishedCursor shape displayed when a column is resized.
ColumnClickSortspublishedIndicates if clicking a column header changes its sort order.
ColumnspublishedDefinitions for the columns displayed the grid.
ConstraintspublishedContains the minimum and maximum Width and Height for the control.
DefaultColWidthpublishedDefault width used for grid columns.
DefaultDrawingpublishedIndicates if the default drawing mechanism is used to draw the background and text for cells.
DefaultRowHeightpublishedDefault row height for newly created grid rows.
DoubleBufferedpublishedWhen enabled, it reduces flicker when the control is painted.
DragCursorpublishedThe cursor shape shown during a drag operation.
DragKindpublishedIndicates the action performed for a drag operation: drag-and-drop or drag-and-dock.
DragModepublishedDetermines how a drag operation is started for the control.
EnabledpublishedDetermines whether the control responds to mouse or keyboard input.
ExtendedSelectpublishedControls whether extending the current cell selection(s) on the control is enabled.
FadeUnfocusedSelectionpublishedIndicates if a special color is used for selected cells when the control loses focus.
FixedColorpublishedThe color used for the fixed cells in the grid.
FixedColspublishedThe number of fixed columns in the grid.
FixedRowspublishedNumber of the fixed rows in the grid.
FlatpublishedIndicates if cells are displayed using a Flat appearance.
FocusColorpublishedThe color used to draw the focus rectangle when a cell has focus.
FocusRectVisiblepublishedIndicates if the focus rectangle is displayed for the control.
FontpublishedThe font to be used for text display in this control.
GridLineColorpublishedColor used for the grid lines on the control.
GridLineStylepublishedStyle used to draw the grid lines on the control.
GridLineWidthpublishedWidth (thickness) for grid lines drawn on the control.
HeaderHotZonespublishedContains the grid zones which are hot-lighted (hovered) on the control.
HeaderPushZonespublishedContains the grid zones which are drawn in a "pushed" state on the control.
ImageIndexSortAscpublishedOrdinal position for the image used when a column is sorted in ascending order.
ImageIndexSortDescpublishedOrdinal position for the image used when a column is sorted in descending order.
MouseWheelOptionpublishedSets the mouse wheel behavior for the grid control.
OptionspublishedContains the set of optional features and/or behaviors enabled for the grid control.
Options2publishedContains additional options for scrolling and editor behavior enabled in the grid control.
ParentBiDiModepublishedIndicates whether the BiDiMode settings in the Parent control are used.
ParentColorpublishedUses the Color from the Parent control when enabled.
ParentDoubleBufferedpublishedValue for the DoubleBuffered property in a Parent control.
ParentFontpublishedIndicates if the Font from the Parent control is used in the control.
ParentShowHintpublishedIf True, the value of ShowHint for the control will be the same as the one from the Parent. Default is True.
PopupMenupublishedA context-sensitive menu that pops up when the right mouse button is clicked over this control.
RangeSelectModepublishedControls the range selection mode used for the grid.
RowCountpublishedNumber of rows in the grid.
RowSizingCursorpublishedCursor shape displayed when the row height is resized.
ScrollBarspublishedScrollbars displayed for the grid control.
ShowHintpublishedEnables Hint display for the control.
TabAdvancepublishedControls the behavior for Tab navigation in the grid control.
TabOrderpublishedIndicates the navigation order for the control when the user presses the Tab or Shift+Tab key.
TabStoppublishedAllows the user to navigate to / from the control by pressing the Tab or Shift+Tab keys.
TitleFontpublishedThe font used for text in a column title.
TitleImageListpublishedThe list with images displayed in column titles.
TitleStylepublishedThe drawing style used for the fixed column titles.
UseXORFeaturespublishedWhen True, the dotted focus rectangle is painted using an XOR raster operation.
VisiblepublishedAllows the control, and all of its children, to be displayed or hidden.

Methods

WSRegisterClassprotectedRegisters this component class with the current WidgetSet.

Events

OnAfterSelectionpublishedEvent handler signalled after a new Selection is made in the grid.
OnBeforeSelectionpublishedEvent handler signalled before changing the Selection in the grid control.
OnCellProcesspublishedEvent handler signalled when copying or pasting content for Cells in the grid.
OnChangeBoundspublishedEvent handler signalled when the Bounds for the control have been changed.
OnCheckboxToggledpublishedEvent handler signalled when the value for a check box cell is toggled.
OnClickpublishedNotification handler for mouse clicks.
OnColRowDeletedpublishedEvent handler signalled when a grid column or row is deleted.
OnColRowExchangedpublishedEvent handler signalled when a column or row has been exchanged with another.
OnColRowInsertedpublishedEvent handler signalled when a column or row is inserted into the grid.
OnColRowMovedpublishedEvent handler signalled when a column or row in the grid is moved.
OnCompareCellspublishedEvent handler signalled to compare the content in cells
OnContextPopuppublishedInvoked when a context-sensitive pop-up menu is requested.
OnDragDroppublishedEvent handler signalled when an object is dropped onto the control.
OnDragOverpublishedEvent handler signalled when a control is dragged over the control instance.
OnDblClickpublishedEvent handler signalled when a mouse double click occurs in the control.
OnDrawCellpublishedEvent handler signalled to draw a cell in the grid control.
OnEditButtonClickpublishedDeprecated. Use OnButtonClick instead.
OnButtonClickpublishedEvent handler signalled when a button-style cell Editor control is clicked.
OnEditingDonepublishedEvent handler signalled when editing is completed for the control.
OnEndDockpublishedEvent handler signalled for the end of a drag-dock operation.
OnEndDragpublishedEvent handler signalled for the end of a drag-drop operation.
OnEnterpublishedEvent handler signalled when the control receives focus.
OnExitpublishedEvent handler signalled when the control loses focus.
OnGetCellHintpublishedGets the hint text for a cell.
OnGetCheckboxStatepublishedEvent handler signalled to get the state for a check box cell.
OnGetEditMaskpublishedEvent handler signalled to get the edit mask used for a grid cell.
OnGetEditTextpublishedEvent handler signalled to get the value for a cell editor in the grid.
OnHeaderClickpublishedEvent handler signalled when the fixed header for a column or row is clicked.
OnHeaderSizedpublishedEvent handler signalled when a column or row header has been resized.
OnHeaderSizingpublishedEvent handler signalled when a column or row header sizing action is started.
OnKeyDownpublishedEvent handler signalled for key down keyboard events.
OnKeyPresspublishedEvent handler signalled for character data entered by the user.
OnKeyUppublishedEvent handler signalled when a key up event has occurred for the control.
OnMouseDownpublishedEvent handler signalled when a mouse down event is handled for the control.
OnMouseEnterpublishedEvent handler signalled when the mouse pointer has entered the control.
OnMouseLeavepublishedEvent handler signalled when the mouse pointer has left the control.
OnMouseMovepublishedEvent handler signalled when the mouse pointer is moved in the control.
OnMouseUppublishedEvent handler signalled when a mouse up event is handled for the control.
OnMouseWheelpublishedEvent handler for mouse wheel turned.
OnMouseWheelDownpublishedEvent handler signalled for a downward movement of the mouse wheel.
OnMouseWheelUppublishedEvent handler signalled for an upward movement of the mouse wheel.
OnMouseWheelHorzpublishedEvent handler signalled for a horizontal movement of the mouse wheel.
OnMouseWheelLeftpublishedEvent handler signalled for a leftward movement of the mouse wheel.
OnMouseWheelRightpublishedEvent handler signalled for a rightward movement of the mouse wheel.
OnPickListSelectpublishedEvent handler signalled when an item is selected from a pick list-style Editor control.
OnPrepareCanvaspublishedEvent handler signalled to prepare the Canvas to draw the grid.
OnResizepublishedNotification handler for a resize of the control.
OnSelectEditorpublishedEvent handler signalled to select an Editor control for the current grid cell.
OnSelectionpublishedEvent handler signalled when an area is selected in the grid control.
OnSelectCellpublishedEvent handler signalled when a grid cell is selected.
OnSetCheckboxStatepublishedEvent handler signalled to set the state for a check box cell.
OnSetEditTextpublishedEvent handler signalled when the text in the cell Editor is assigned.
OnShowHintpublishedEvent handler signalled when a hint window is displayed for the control.
OnStartDockpublishedEvent handler for the start of a docking operation.
OnStartDragpublishedEvent handler signalled for the start of a dragging operation.
OnTopLeftChangedpublishedEvent handler signalled when the top left cell in the visible area of the control is changed.
OnUserCheckboxBitmappublishedEvent handler signalled to get the user-defined bitmap used for a check box cell.
OnUserCheckboxImagepublishedEvent handler signalled to get the user-defined image used for a check box cell.
OnUTF8KeyPresspublishedHandler for a character entered by the user.
OnValidateEntrypublishedEvent handler signalled to perform validation for a cell value.

Inherited

From TCustomStringGrid (42)

AssignTo AutoAdjustColumn AutoSizeColumn AutoSizeColumns CalcCellExtent Cells Clean Cols CopyToClipboard Create DefaultTextStyle DefineCellsProperty DefineProperties Destroy DoCellProcess DoCompareCells DoCopyToClipboard DoCutToClipboard DoPasteFromClipboard DrawCellAutonumbering DrawColumnText DrawTextInCell EditorMode GetCells GetCheckBoxState GetEditText InsertRowWithValues LoadContent Loaded LoadFromCSVFile LoadFromCSVStream Objects Rows SaveContent SaveToCSVFile SaveToCSVStream SelectionSetHTML SelectionSetText SetCells SetCheckboxState SetEditText ValidateOnSetSelection

From TCustomDrawGrid (54)

AltColorStartNormal BorderColor Canvas CellClick Col ColRow ColRowDeleted ColRowExchanged ColRowInserted ColRowMoved ColWidths CreateVirtualGrid DefaultDrawCell DeleteCol DeleteColRow DeleteRow DisabledFontColor DrawCell DrawFocusRect Editor EditorBorderStyle ExchangeColRow ExtendedColSizing FastEditing FixedGridLineColor FixedHotColor GetEditMask GridHeight GridMouseWheel GridWidth HeaderClick HeaderSized HeaderSizing InsertColRow IsCellSelected KeyDown LeftCol MoveColRow NotifyColRowChange Row RowHeights SaveOptions SelectCell SelectedColor SelectedColumn Selection SetColor SizeChanged SortColRow StrictSort ToggleCheckbox TopRow VisibleColCount VisibleRowCount

From TCustomGrid (260)

AddSelectedRange AdjustClientRect AdjustEditorBounds AdjustInnerCellRect AfterMoveSelection AutoAdjustColumns BeforeMoveSelection BeginAutoDrag BeginUpdate BoxRect CacheMouseDown CalcAutoSizeColumn CalcFocusRect CalcMaxTopLeft CalcScrollbarsRange CalculatePreferredSize CanEditShow CanGridAcceptKey CellExtent CellRect CellToGridZone CheckLimits CheckLimitsWithError CheckNewCachedSizes CheckPosition Clear ClearCols ClearRows ClearSelections Click CMBiDiModeChanged CMMouseEnter CMMouseLeave ColRowToOffset ColumnFromGridColumn ColumnIndexFromGridColumn ColumnsChanged ColWidthsChanged CreateColumns CreateParams CreateWnd CursorState DblClick DefaultColWidthIsStored DefaultRowHeightIsStored DestroyHandle DialogChar DoAutoAdjustLayout DoEditButtonClick DoEditorHide DoEditorShow DoEnter DoExit DoLoadColumn DoMouseWheel DoMouseWheelDown DoMouseWheelLeft DoMouseWheelRight DoMouseWheelUp DoOnChangeBounds DoOnResize DoOPDeleteColRow DoOPExchangeColRow DoOPInsertColRow DoOPMoveColRow DoPrepareCanvas DoSaveColumn DoSetBounds DoUTF8KeyPress DragDx DrawAllRows DrawBorder DrawButtonCell DrawCellGrid DrawCellText DrawColRowMoving DrawColumnTitleImage DrawEdges DrawFillRect DrawGridCheckboxBitmaps DrawRow DrawThemedCell EditButtonClicked EditingAllowed EditingDone EditorByStyle EditorCanAcceptKey EditordoGetValue EditordoResetValue EditordoSetValue EditorHide EditorIsReadOnly EditorKey EditorKeyDown EditorKeyPress EditorKeyUp EditorLocked EditorOptions EditorSelectAll EditorShow EditorShowInCell EditorShowing EditorTextChanged EditorUTF8KeyPress EditorWidthChanged EndUpdate EraseBackground ExtendedRowSizing FirstGridColumn FixDesignFontsPPI FixedGrid FlipPoint FlipRect FlipX Focused FontChanged GCache GetAutoFillColumnInfo GetCellHintText GetColumnAlignment GetColumnColor GetColumnFont GetColumnLayout GetColumnReadonly GetColumnTitle GetColumnWidth GetDefaultColumnAlignment GetDefaultColumnLayout GetDefaultColumnReadOnly GetDefaultColumnTitle GetDefaultColumnWidth GetDefaultEditor GetDefaultRowHeight GetDeltaMoveNext GetFirstVisibleColumn GetFirstVisibleRow GetFixedcolor GetGridDrawState GetImageForCheckBox GetIsCellSelected GetIsCellTitle GetLastVisibleColumn GetLastVisibleRow GetPxTopLeft GetSBRanges GetSBVisibility GetScrollBarPosition GetSelectedColor GetSelectedState GetSmoothScroll GetTitleShowPrefix GetTruncCellHintText GridColumnFromColumnIndex GridFlags HasMultiSelection HideCellHintWindow HideSortArrow InternalSetColCount Invalidate InvalidateCell InvalidateCol InvalidateFocused InvalidateFromCol InvalidateGrid InvalidateRange InvalidateRow IsCellVisible IsColumnIndexValid IsColumnIndexVariable IsEmptyRow IsFixedCellVisible IsMouseOverCellButton IsRowIndexValid IsRowIndexVariable KeyPress KeyUp LoadFromFile LoadFromStream LoadGridOptions LockEditor MouseButtonAllowed MouseCoord MouseDown MouseMove MouseToCell MouseToGridZone MouseToLogcell MouseUp MoveExtend MoveNextAuto MoveNextSelectable MoveSelection Notification OffsetToColRow OnLoadColumn OnSaveColumn Paint PickListItemSelected PrepareCanvas PrepareCellHints RangeContains ResetDefaultColWidths ResetEditor ResetLastMove ResetOffset ResetSizes ResizeColumn ResizeRow RowHeightsChanged RTLSign SaveGridOptions SaveToFile SaveToStream ScaleFontsPPI ScrollBarAutomatic ScrollBarIsVisible ScrollBarPage ScrollBarPosition ScrollBarRange ScrollBarShow ScrollBy SelectActive SelectEditor SelectedRange SelectedRangeCount SetBorderStyle SetCanvasFont SetColCount SetColRow SetCursor SetFadeUnfocusedSelection SetFixedcolor SetFixedCols SetFixedRows SetFocus SetRawColWidths SetSelectedColor ShowCellHintWindow Sort SortColumn SortOrder StartPushCell TitleImageListWidth TopLeftChanged TryMoveSelection TrySmoothScrollBy UnLockEditor UnprepareCellHints UpdateBorderStyle UpdateHorzScrollBar UpdateSelectionRange UpdateVertScrollbar ValidateEntry VisualChange WMHScroll WMKillFocus WMSetFocus WMSize WMVScroll WndProc

From TCustomControl (4)

DestroyWnd OnPaint PaintWindow WMPaint

From TWinControl (202)

AddControl AlignControls AllAutoSized AutoAdjustLayout AutoSizeDelayed AutoSizeDelayedHandle AutoSizeDelayedReport AutoSizePhases BeginUpdateBounds BorderWidth BoundsLockCount BroadCast Brush BrushCreated CachedClientHeight CachedClientWidth CanFocus CanSetFocus CanTab ChangeScale ChildClassAllowed ChildHandlesCreated ChildKey ChildSizing ClientRectNeedsInterfaceUpdate CMBorderChanged CMDoubleBufferedChanged CMEnabledChanged CMEnter CMExit CMParentDoubleBufferedChanged CMShowHintChanged CMShowingChanged CMVisibleChanged CNChar CNKeyDown CNKeyUp CNSysKeyDown CNSysKeyUp ContainsControl ControlAtPos ControlCount ControlKeyDown ControlKeyUp Controls ControlsAligned CreateBrush CreateDockManager CreateHandle CreateParented CreateParentedControl CreateSubClass CustomAlignInsertBefore CustomAlignPosition DefaultHandler DefWndProc DesignerDeleting DisableAlign DoAddDockClient DoAdjustClientRectChange DoAlignChildControls DoAllAutoSize DoAutoSize DoChildSizingChange DockClientCount DockClients DockDrop DockManager DockOver DockSite DoConstraintsChange DoDockClientMsg DoDockOver DoDragMsg DoFlipChildren DoFloatMsg DoGetDockCaption DoKeyDownBeforeInterface DoKeyPress DoKeyUpBeforeInterface DoRemainingKeyDown DoRemainingKeyUp DoRemoveDockClient DoSendBoundsToInterface DoSendShowHideToInterface DoUnDock DoUndockClientMsg EnableAlign EndUpdateBounds FinalizeWnd FindChildControl FindNextControl FixDesignFontsPPIWithChildren FixupTabList FlipChildren FormEndUpdated GetAdjustedLogicalClientRect GetBorderStyle GetChildren GetChildrenRect GetClientOrigin GetClientRect GetControlIndex GetControlOrigin GetDeviceContext GetDockCaption GetEnumeratorControls GetEnumeratorControlsReverse GetMouseCapture GetParentHandle GetPreferredSizeClientFrame GetSiteInfo GetTabOrderList GetTextLen GetTopParentHandle Handle HandleAllocated HandleNeeded InitializeWnd InsertControl IntfGetDropFilesTarget IntfUTF8KeyPress InvalidateBoundsRealized InvalidateClientRectCache InvalidatePreferredChildSizes IsClientHeightStored IsClientWidthStored IsControlMouseMsg IsFlipped IsResizing IsSpecialSubControl KeyDownAfterInterface KeyDownBeforeInterface KeyUpAfterInterface KeyUpBeforeInterface LockRealizeBounds MainWndProc NotifyControls OnAlignInsertBefore OnAlignPosition OnDockDrop OnDockOver OnGetDockCaption OnGetSiteInfo OnUnDock PaintControls PaintHandler PaintTo ParentFormHandleInitialized ParentHandlesAllocated ParentWindow PerformTab RealGetText ReAlign RealizeBounds RealizeBoundsRecursive RealSetText ReloadDockedControl RemoveControl RemoveFocus Repaint ScaleBy ScaleControls ScrollBy_WS SelectFirst SelectNext SendDialogChar SendMoveSizeMessages SetBounds SetChildZPosition SetControlIndex SetDockManager SetShape SetTempCursor ShowControl Showing UnlockRealizeBounds Update UpdateControlState UpdateDockCaption UpdateShowing UseDockManager UTF8KeyPress VisibleDockClientCount WindowHandle WMChar WMContextMenu WMDestroy WMEnter WMEraseBkgnd WMExit WMKeyDown WMKeyUp WMMove WMNotify WMShowWindow WMSysChar WMSysKeyDown WMSysKeyUp WMWindowPosChanged WriteLayoutDebugReport WSSetText

From TControl (302)

AccessibleDescription AccessibleName AccessibleRole AccessibleValue Action ActionChange ActionLink ActiveDefaultControlChanged AddHandler AddHandlerOnBeforeDestruction AddHandlerOnChangeBounds AddHandlerOnEnabledChanged AddHandlerOnEnabledChanging AddHandlerOnKeyDown AddHandlerOnMouseWheel AddHandlerOnResize AddHandlerOnVisibleChanged AddHandlerOnVisibleChanging AdjustSize AnchorAsAlign AnchorClient AnchoredControlCount AnchoredControls AnchorHorizontalCenterTo AnchorParallel AnchorSame AnchorSide AnchorSideBottom AnchorSideChanged AnchorSideLeft AnchorSideRight AnchorSideTop AnchorToCompanion AnchorToNeighbour AnchorVerticalCenterTo AutoSize AutoSizing AutoSizingAll AutoSizingLockCount BaseBounds BaseParentClientSize BeforeDestruction BeforeDragStart BeginAutoSizing BeginDrag BoundsChanged BoundsRect BoundsRectForNewParent BringToFront CalculateDockSizes CanAutoSize Caption CaptureChanged CaptureMouseButtons ChangeBounds Changed CheckChildClassAllowed CheckNewParent CheckOnChangeBounds ClientHeight ClientOrigin ClientRect ClientToParent ClientToScreen ClientWidth CMChanged CMCursorChanged CMHintShow CMHitTest CMParentBiDiModeChanged CMParentColorChanged CMParentFontChanged CMParentShowHintChanged CMSysFontChanged CMTextChanged CNPreferredSizeChanged ColorIsStored ConstrainedResize ControlFontClass ControlOrigin ControlState ControlStyle ControlToScreen CreateAccessibleObject CreateControlBorderSpacing CreateFloatingDockSite Cursor DesktopFont DisableAutoSizing DoBorderSpacingChange DoCallKeyEventHandler DoCallMouseWheelEventHandler DoCallNotifyHandler Dock Docked DockOrientation DockTrackNoTarget DoContextPopup DoDock DoEndDock DoEndDrag DoFixDesignFontPPI DoMouseDown DoMouseUp DoMouseWheelHorz DoOnParentHandleDestruction DoOnShowHint DoScaleFontPPI DoStartDock DoStartDrag DragCanceled DragDrop Dragging DragOver EnableAutoSizing EnabledChanged EnabledChanging EndAutoSizing EndDrag ExecuteCancelAction ExecuteDefaultAction FindSubComponent Floating FloatingDockSiteClass ForeignAnchorSideChanged FormIsUpdating GetAccessibleObject GetAction GetActionLinkClass GetAnchorsDependingOnParent GetCachedText GetCanvasScaleFactor GetChildAccessibleObjectAtPos GetClientScrollOffset GetColorResolvingParent GetControlClassDefaultSize GetCursor GetDefaultColor GetDefaultDockCaption GetDefaultHeight GetDefaultWidth GetDockEdge GetDragImages GetEnabled GetFloating GetFloatingDockSiteClass GetLogicalClientRect GetMousePosFromMessage GetPalette GetParentBackground GetParentComponent GetPopupMenu GetPreferredSize GetRGBColorResolvingParent GetScrolledClientRect GetSelectedChildAccessibleObject GetSidePosition GetTextBuf GetTopParent HandleObjectShouldBeVisible HasHelp HasParent Height HeightIsAnchored HelpContext HelpKeyword HelpType Hide Hint HostDockSite InitiateAction InvalidateControl InvalidatePreferredSize IsAParentAligning IsBorderSpacingInnerBorderStored IsCaptionStored IsControl IsControlVisible IsEnabled IsParentColor IsParentFont IsParentOf IsProcessingPaintMsg IsRightToLeft IsVisible Left LMCaptureChanged LoadedAll LRDockWidth ManualDock ManualFloat MouseCapture MouseEnter MouseInClient MouseLeave OnConstrainedResize OnQuadClick OnTripleClick Parent ParentBackground ParentDestroyingHandle ParentFontChanged ParentToClient Perform PositionDockRect QuadClick ReadBounds ReadState Refresh RemoveAllHandlersOfObject RemoveHandler RemoveHandlerOnBeforeDestruction RemoveHandlerOnChangeBounds RemoveHandlerOnEnabledChanged RemoveHandlerOnEnabledChanging RemoveHandlerOnKeyDown RemoveHandlerOnMouseWheel RemoveHandlerOnResize RemoveHandlerOnVisibleChanged RemoveHandlerOnVisibleChanging ReplaceDockedControl RequestAlign Resize Scale96ToFont Scale96ToForm Scale96ToScreen ScaleConstraints ScaleDesignToForm ScaleFontTo96 ScaleFontToScreen ScaleFormTo96 ScaleFormToDesign ScaleScreenTo96 ScaleScreenToFont ScreenToClient ScreenToControl SendToBack SessionProperties SetAction SetAlign SetAnchors SetAutoSize SetBiDiMode SetBoundsKeepBase SetDragMode SetEnabled SetHint SetInitialBounds SetName SetParent SetParentBackground SetParentBiDiMode SetParentComponent SetTextBuf SetVisible SetZOrder ShouldAutoAdjust Show ShowHelp TBDockHeight Text TextChanged Top TripleClick UndockHeight UndockWidth UpdateAnchorRules UpdateBaseBounds UpdateMouseCursor UpdateRolesForForm UseRightToLeftAlignment UseRightToLeftReading UseRightToLeftScrollBar VisibleChanged VisibleChanging Width WidthIsAnchored WindowProc WMCancelMode WMLButtonDBLCLK WMLButtonDown WMLButtonQuadCLK WMLButtonTripleCLK WMLButtonUp WMMButtonDBLCLK WMMButtonDown WMMButtonQuadCLK WMMButtonTripleCLK WMMButtonUp WMMouseHWheel WMMouseMove WMMouseWheel WMRButtonDBLCLK WMRButtonDown WMRButtonQuadCLK WMRButtonTripleCLK WMRButtonUp WMXButtonDBLCLK WMXButtonDown WMXButtonQuadCLK WMXButtonTripleCLK WMXButtonUp

From TLCLComponent (6)

DecLCLRefCount GetWSComponentClass IncLCLRefCount LCLRefCount NewInstance WidgetSetClass

From TComponent (64)

_AddRef _Release CanObserve ChangeName ComObject ComponentCount ComponentIndex Components ComponentState ComponentStyle DesignInfo DestroyComponents Destroying ExecuteAction FindComponent FreeNotification FreeOnRelease GetChildOwner GetChildParent GetDeltaStreams GetEnumerator GetIDsOfNames GetNamePath GetObservers GetOwner GetTypeInfo GetTypeInfoCount iicrGetComponent InsertComponent Invoke IsImplementorOf Loading Name ObserverAdded Observers OnGetDeltaStreams Owner PaletteCreated QueryInterface ReadDeltaState ReadDeltaStream ReferenceInterface RemoveComponent RemoveFreeNotification RemoveFreeNotifications SafeCallException SetAncestor SetChildOrder SetDesigning SetDesignInstance SetInline SetSubComponent Tag ToString TToStringNameMode UpdateAction Updated UpdateRegistry Updating ValidateContainer ValidateInsert ValidateRename VCLComObject WriteState

From TPersistent (4)

Assign FPOAttachObserver FPODetachObserver FPONotifyObservers

From TObject (35)

AfterConstruction CheckDisposed ClassInfo ClassName ClassNameIs ClassParent ClassType CleanupInstance DefaultHandlerStr Dispatch DispatchStr Disposed DisposeOf Equals FieldAddress Free FreeInstance GetDisposed GetHashCode GetInterface GetInterfaceByStr GetInterfaceEntry GetInterfaceEntryByStr GetInterfaceTable GetInterfaceWeak GetLastCastErrorInfo InheritsFrom InitInstance InstanceSize MethodAddress MethodName QualifiedClassName StringMessageTable SystemHasExtendedRTTI UnitName

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.