TPageScroller — Fenster auf ein größeres Element
Ein Ausschnitt mit Pfeilfeldern an beiden Enden: er zeigt ein Steuerelement, das breiter (oder höher) ist als der verfügbare Platz, und schiebt es beim Klick weiter. Typisch für Werkzeugleisten in schmalen Fenstern.
Unit: vega.layoutctrls · Basis: TControl
→ Alle Steuerelemente · Klassenbaum · Guide: Komponenten
Vererbung
Kette: TComponent → TControl → TPageScroller
Direkte Nachfahren: keine — diese Klasse wird nicht weiter abgeleitet.
Quelle: vega/layoutctrls.lyx
Verwendung
var ps: TPageScroller := new TPageScroller();
ps.SetBounds(0, 0, 300, 30);
ps.SetAlign(AL_TOP);
ps.SetParent(f);
var tb: TToolBar := new TToolBar();
tb.SetParent(ps as TControl);
ps.Control := tb as TControl; // das Element im Fenster
Besonderheiten
Controlist zugleich Kind: das gezeigte Element wird Kind des Rollers, undControlsagt, welches gemeint ist.Positionist die Verschiebung und immer>= 0;Marginbestimmt, wie weit ein Klick schiebt,ButtonSizedie Breite der Pfeilfelder.Orientationentscheidet über die Richtung — waagerecht oder senkrecht.
Eigenschaften
Alle Eigenschaften, auch die geerbten.
| Name | Typ | Bedeutung | Herkunft |
|---|---|---|---|
ComponentState | int64 | Zustand als Bitmaske (csLoading, csDestroying …) | TComponent |
ComponentStyle | int64 | Stil als Bitmaske; Vorgabe csInheritable | TComponent |
Name | pchar | Name der Komponente — für FindComponent und beim Laden aus LFM | TComponent |
OwnedComponents | TObjectList | Die Komponenten, die DIESER gehoeren. Delphis Components[]. Zeigerliste, keine Kopien: TObjectList hält int64-Adressen | TComponent |
Owner | TComponent | Wer diese Komponente wegraeumt. Nicht der Elternteil im Zeichenbaum — das ist bei TControl `Parent` | TComponent |
Tag | int64 | Freier Wert für eigene Zwecke; die Bibliothek fasst ihn nicht an | TComponent |
ButtonSize | int64 | Breite der Pfeilfelder | eigen |
Control | TControl | Das Control im Fenster. Es ist Kind dieses Controls | eigen |
Margin | int64 | Wieviel ein Klick weiterschiebt | eigen |
Orientation | int64 | Waagerecht oder senkrecht | eigen |
Position | int64 | Verschiebung des Inhalts, immer >= 0 | eigen |
Methoden
Alle Methoden, auch die geerbten.
| Signatur | Zweck | Herkunft |
|---|---|---|
ClearState(bits: int64): void | Zustandsbits löschen | TComponent |
ComponentCount(): int64 | Anzahl der eigenen Komponenten | TComponent |
ComponentIndex(): int64 | Delphis ComponentIndex: der eigene Platz in der Liste des Besitzers | TComponent |
Components(index: int64): TComponent | Eigene Komponente an dieser Stelle | TComponent |
Destroy(): void | Raeumt die eigene Liste ab, aber NICHT die Einträge — welche Komponenten ihre Besitztuemer mitnehmen, entscheidet die Ableitung über DestroyComponents() | TComponent |
DestroyComponents(): void | Baut die Besitztuemer ab. Von hinten, weil jedes Destroy() sich selbst aus der Liste austraegt | TComponent |
FindComponent(name: pchar): TComponent | Sucht unter den EIGENEN Komponenten, eine Ebene tief — wie in Delphi | TComponent |
GetName(): pchar | Namen lesen | TComponent |
GetNamePath(): pchar | Der eigene Name. Delphi hängt bei Unterkomponenten den des Besitzers davor; Vega hat keine, also ist es der Name selbst | TComponent |
GetTag(): int64 | Tag lesen | TComponent |
HasState(bits: int64): bool | Sind diese Zustandsbits gesetzt | TComponent |
InitComponent(): void | Kein Konstruktor: lyxc vererbt Konstruktoren nicht, jede Ableitung ruft InitComponent() im eigenen Create() | TComponent |
InsertComponent(c: TComponent): void | Komponente in Besitz nehmen; ein bisheriger Besitzer gibt sie ab | TComponent |
RemoveComponent(c: TComponent): void | Komponente aus dem Besitz nehmen | TComponent |
SetName(v: pchar): void | Setzt Name | TComponent |
SetState(bits: int64): void | Zustand setzen | TComponent |
SetTag(v: int64): void | Setzt Tag | TComponent |
ArrangeInner(): void | Das Control an seinen Platz setzen — verschoben um Position, und eingerueckt um die Pfeilbreite, wenn es Pfeile gibt | eigen |
Create(): void | Anlegen; new TPageScroller() | eigen |
HiddenAmount(): int64 | Wieviel vom Inhalt nicht sichtbar ist. 0 heißt: alles passt, und dann sind auch die Pfeile überfluessig | eigen |
IsHorizontal(): bool | Ob waagerecht gerollt wird | eigen |
NeedsButtons(): bool | Ob die Pfeilfelder gebraucht werden | eigen |
ScrollBy(delta: int64): void | Alle Kinder um dx,dy verschieben | eigen |
ScrollEnd(): void | Rollt ans Ende | eigen |
ScrollHome(): void | Rollt an den Anfang | eigen |
SetControl(c: TControl): void | Setzt Control | eigen |
SetOrientation(v: int64): void | Setzt Orientation | eigen |
SetPosition(v: int64): void | Setzt Position | eigen |
Ereignisse
| Name | Typ | Wann | Herkunft |
|---|---|---|---|
OnScroll | TNotifyEvent | Der Inhalt wurde gerollt | eigen |
Letzte Aktualisierung: 2026-09-05 — Seite neu angelegt; erhoben aus vega/layoutctrls.lyx im Repo lyx-vcl.
