TAnimate — Bildstreifen abspielen
Zeigt einen Bildstreifen als Folge: mehrere gleich breite Einzelbilder nebeneinander in einer TBitmap, die der Reihe nach durchlaufen werden. Der übliche Weg für Warteanzeigen und kleine Bewegungen.
Unit: vega.extctrls · Basis: TControl
→ Alle Steuerelemente · Klassenbaum · Guide: Komponenten
Vererbung
Kette: TComponent → TControl → TAnimate
Direkte Nachfahren: keine — diese Klasse wird nicht weiter abgeleitet.
Quelle: vega/extctrls.lyx
Verwendung
var a: TAnimate := new TAnimate();
a.SetBounds(8, 8, 32, 32);
a.Frames := streifen; // gehoert dem Control NICHT
a.SetFrameCount(12);
a.SetInterval(80); // Millisekunden je Bild
a.SetParent(f);
a.Start();
Besonderheiten
- Der Streifen gehört dem Control nicht — dasselbe Bild kann an mehreren Stellen laufen.
- Die Einzelbilder liegen nebeneinander, alle gleich breit: die Breite ergibt sich aus Streifenbreite geteilt durch
FrameCount. Intervalist die Zeit je Bild, nicht die Gesamtdauer.
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 |
Active | bool | Laeuft die Folge? | eigen |
Center | bool | Bild in der Flaeche mittig — Delphis Center. Aus heißt links oben | eigen |
FrameCount | int64 | Wieviele Einzelbilder nebeneinander liegen | eigen |
FrameIndex | int64 | Welches gerade gezeigt wird | eigen |
Frames | TBitmap | Der Streifen. Gehoert dem Control NICHT — dasselbe Bild kann an mehreren Stellen laufen | eigen |
Interval | int64 | Millisekunden je Bild | eigen |
Loop | bool | Am Ende wieder von vorn? | eigen |
Repetitions | int64 | 0 heißt endlos. Delphis Repetitions | eigen |
ResetOnStop | bool | Beim Anhalten auf das erste Bild zurück | eigen |
StartFrame | int64 | Delphis Ausschnitt: von welchem bis zu welchem Bild gelaufen wird, und wie oft. StartFrame/StopFrame zaehlen ab 0 (Delphi ab 1) — Vega zählt Bilder überall ab 0, und zwei Zaehlweisen in … | eigen |
StopFrame | int64 | Bild, bei dem das Abspielen endet | eigen |
Transparent | bool | Ohne Bildfolge nichts zeichnen (statt eines leeren Rahmens) | 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 |
Create(): void | Anlegen; new TAnimate() | eigen |
EffectiveStartFrame(): int64 | Erstes tatsächlich gezeigtes Bild | eigen |
EffectiveStopFrame(): int64 | Letztes Bild des Ausschnitts. StopFrame 0 bei mehr als einem Bild heißt „bis zum Ende“ — sonst liefe eine frisch gesetzte Folge nur über ihr erstes Bild | eigen |
FrameHeight(): int64 | Höhe eines Einzelbildes | eigen |
FrameWidth(): int64 | Breite eines Einzelbildes | eigen |
NextFrame(): void | Ein Bild weiter. Getrennt von Tick, damit eine Anwendung auch von Hand blaettern kann — und damit der Test nicht auf die Uhr angewiesen ist | eigen |
Reset(): void | Zurueck auf den Anfang des Ausschnitts und anhalten — Delphis Reset | eigen |
Seek(frame: int64): void | Auf ein bestimmtes Bild springen, ohne zu laufen — Delphis Seek | eigen |
SetCenter(v: bool): void | Setzt Center | eigen |
SetFrameIndex(i: int64): void | Setzt FrameIndex | eigen |
SetFrames(bmp: TBitmap, count: int64): void | Die Folge setzen. `count` ist die Zahl der Bilder im Streifen; die Größe eines Bildes ergibt sich daraus | eigen |
SizeToFrame(): void | Größe an ein Einzelbild anpassen — der übliche Wunsch nach SetFrames | eigen |
Start(now: int64): void | Zeitgeber einschalten | eigen |
Stop(): void | Zeitgeber ausschalten | eigen |
Ereignisse
| Name | Typ | Wann | Herkunft |
|---|---|---|---|
OnComplete | TNotifyEvent | Meldet sich, wenn die Folge durchgelaufen ist und NICHT wiederholt | eigen |
OnFrameChange | TNotifyEvent | Ein anderes Einzelbild wird gezeigt | eigen |
OnStart | TNotifyEvent | Delphis OnStart/OnStop: beim Anlaufen und beim Anhalten. OnStop kommt auch, wenn die Folge von selbst zu Ende ist — dann zusammen mit OnComplete | eigen |
OnStop | TNotifyEvent | Das Abspielen ist zu Ende | eigen |
Letzte Aktualisierung: 2026-09-05 — Seite neu angelegt; erhoben aus vega/extctrls.lyx im Repo lyx-vcl.
