type TPdfThumbnailOrientation = (ptoVertical, ptoHorizontal);
type TPdfThumbnailView = class(TCustomControl) ... end;
| Member | Description |
|---|---|
Create | Initialises default thumbnail sizing, colours, scrolling and selection state |
Destroy | Releases internal thumbnail-control resources |
EnsureCurrentPageVisible | Scrolls the thumbnail viewport only when the selected one-based page lies outside the visible range |
| Property | Type | Default | Description |
|---|---|---|---|
Pdf | TPdf | nil | Document component used for page count and thumbnail rendering |
CurrentPageIndex | Integer | 0 | One-based selected page index; changing it keeps the selected thumbnail visible, whilst 0 means no selection |
Orientation | TPdfThumbnailOrientation | ptoVertical | Chooses a vertical list with a right scrollbar or a horizontal strip with a bottom scrollbar |
FirstVisiblePageIndex | Integer | Read-only | One-based first page in the current thumbnail viewport, or 0 when no document page is available |
LastVisiblePageIndex | Integer | Read-only | One-based last page in the current thumbnail viewport, or 0 when no document page is available |
ThumbnailWidth | Integer | 120 | Target thumbnail width, clamped to the supported range |
ThumbnailHeight | Integer | 160 | Target thumbnail height, clamped to the supported range |
TextColor | TColor | clBlack | Page-number caption colour |
HoverColor | TColor | clMoneyGreen | Row highlight colour under the hovered thumbnail |
SelectionColor | TColor | clHighlight | Row highlight colour for CurrentPageIndex |
BorderColor | TColor | clGray | Thumbnail border colour |
Color | TColor | clWhite | Control background colour inherited from TCustomControl |
Align, Anchors, Visible | — | Re-published TControl properties for standard form placement and visibility |
| Event | Type | Description |
|---|---|---|
OnPageClick | TPdfThumbnailClickEvent | Raised when the user left-clicks a thumbnail row; APageIndex is one-based |
Assign Pdf to the same TPdf instance used by a viewer, then keep CurrentPageIndex synchronised with the active page
Use ptoVertical for a sidebar or ptoHorizontal for a filmstrip, with hit testing, painting, scrolling and visible-range queries following the selected orientation
The control owns its scrolling and keeps rendered bitmaps only for the current visible page range, so overlapping pages are reused during adjacent scrolling without retaining a long document in memory
Assigning another Pdf or changing ThumbnailWidth or ThumbnailHeight clears the cached bitmaps, whilst hover and current-page state changes reuse them
Handle OnPageClick to update a paired TPdfView.PageNumber or any other page-navigation surface
ThumbnailView.Pdf := Pdf1;
ThumbnailView.Orientation := ptoHorizontal;
ThumbnailView.CurrentPageIndex := PdfView1.PageNumber;
ThumbnailView.OnPageClick := ThumbnailPageClick;