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: TComponentTControlTPageScroller

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

  • Control ist zugleich Kind: das gezeigte Element wird Kind des Rollers, und Control sagt, welches gemeint ist.
  • Position ist die Verschiebung und immer >= 0; Margin bestimmt, wie weit ein Klick schiebt, ButtonSize die Breite der Pfeilfelder.
  • Orientation entscheidet ü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.