TImageList — Sammlung gleich großer Symbole
Hält einen Satz Symbole in einheitlicher Größe — für Werkzeugleisten, Listen und Bäume. Kein Steuerelement, sondern ein reiner Behälter mit Zeichenmethoden — sie hängt darum direkt an TComponent.
Unit: Vega.Images · Basis: TComponent
→ Alle Steuerelemente · Guide: Zeichnen
Verwendung
var il: TImageList := new TImageList(16, 16);
var s: TBitmap := new TBitmap();
s.SetSize(16, 16);
s.Clear(RGB(0, 128, 0));
Print(IntToStr(il.Add(s))); // 0 — Stelle des Symbols
Print(IntToStr(il.Count())); // 1
// ganze Symbolsätze am Stück
il.AddStripFromFile("symbole.png"); // n Symbole nebeneinander
// zeichnen
il.Draw(canvas, 4, 4, 0);
il.DrawDisabled(canvas, 24, 4, 0); // blass, für gesperrte Knöpfe
Besonderheiten
Addlegt immer eine Kopie in Listengröße an — passt die Größe nicht, wird skaliert. Das übergebene Bitmap bleibt dem Aufrufer, der es weiterbenutzen oder freigeben darf. Rückgabe ist die Stelle oder-1bei leerem Bild.- Die Kopien gehören der Liste:
Delete,ClearundDestroygeben sie frei. AddStripverlangt, dass die Höhe des Streifens der Listenhöhe entspricht, sonst tut es nichts. Es liefert die Anzahl der neuen Symbole, nicht deren Stelle.DrawDisabledhalbiert die Deckkraft, statt einen zweiten Symbolsatz zu verlangen — das sieht bei jedem Symbol richtig aus und spart Pflege.- Ein
indexaußerhalb 0..Count()-1 zeichnet nichts.
Letzte Aktualisierung: 2026-08-20 — API maschinell aus Vega/Images.lyx erhoben, Beispiel mit lyxc 1.1.3O übersetzt.
Eigenschaften
Alle Eigenschaften, auch die geerbten.
| Name | Typ | Bedeutung | Herkunft |
|---|---|---|---|
Width | int64 | Breite | eigen |
Height | int64 | Höhe | eigen |
Items | TObjectList | Die Einträge | eigen |
Owner | TComponent | Wer diese Komponente wegräumt — nicht das Elternteil im Zeichenbaum | TComponent |
OwnedComponents | TObjectList | Die Komponenten, die dieser gehören (Delphis Components[]) | TComponent |
Name | pchar | Name der Komponente, für FindComponent und Formulardateien | TComponent |
Tag | int64 | Freier Wert für die Anwendung | TComponent |
ComponentState | int64 | Zustand als Bitmaske: csLoading, csDestroying, csDesigning … | TComponent |
ComponentStyle | int64 | Stil als Bitmaske; Vorgabe csInheritable | TComponent |
Methoden
Alle Methoden, auch die geerbten.
| Signatur | Zweck | Herkunft |
|---|---|---|
Create(w: int64, h: int64): void | Konstruktor | eigen |
Destroy(): void | Gibt eigene Ressourcen frei | eigen |
Clear(): void | Leeren — bei TBitmap die Fläche mit c füllen | eigen |
Count(): int64 | Zahl der Einträge | eigen |
At(i: int64): TBitmap | Symbol an dieser Stelle | eigen |
Add(b: TBitmap): int64 | Eintrag anhängen | eigen |
AddFromFile(path: pchar): int64 | Bild laden und als Symbol anhängen | eigen |
AddStrip(b: TBitmap): int64 | Waagerechten Streifen in gleich große Symbole zerlegen und alle anhängen; liefert die Anzahl | eigen |
AddStripFromFile(path: pchar): int64 | Streifen aus einer Datei laden und zerlegen | eigen |
Delete(i: int64): void | Eintrag entfernen | eigen |
Draw(canvas: TCanvas, x: int64, y: int64, index: int64): void | Symbol index an x,y zeichnen | eigen |
DrawDisabled(canvas: TCanvas, x: int64, y: int64, index: int64): void | Symbol blass zeichnen — halbe Deckkraft statt zweitem Symbolsatz | eigen |
InitComponent(): void | Grundzustand herstellen — von jeder Ableitung im Create zu rufen, da Lyx Konstruktoren nicht vererbt | TComponent |
ComponentCount(): int64 | Anzahl der eigenen Komponenten | TComponent |
Components(index: int64): TComponent | Eigene Komponente an dieser Stelle | TComponent |
ComponentIndex(): int64 | Eigener Platz in der Liste des Besitzers, -1 ohne Besitzer | 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 |
FindComponent(name: pchar): TComponent | Eigene Komponente über ihren Name suchen — eine Ebene tief | TComponent |
DestroyComponents(): void | Alle Besitztümer abbauen, von hinten nach vorn | TComponent |
SetName(v: pchar): void | Namen setzen | TComponent |
GetName(): pchar | Namen lesen | TComponent |
SetTag(v: int64): void | Tag setzen | TComponent |
GetTag(): int64 | Tag lesen | TComponent |
HasState(bits: int64): bool | Sind diese Zustandsbits gesetzt | TComponent |
SetState(bits: int64): void | Zustandsbits setzen | TComponent |
ClearState(bits: int64): void | Zustandsbits löschen | TComponent |
HasParent(): bool | Hängt die Komponente in einem Baum | TComponent |
GetParentComponent(): TComponent | Übergeordnete Komponente im Baum | TComponent |
GetNamePath(): pchar | Voller Name für Formulardateien; in Vega der Name selbst | TComponent |
Tick(now: int64): bool | Einmal je Bild aus der Fensterschleife; true = es hat sich etwas getan, also neu zeichnen | TComponent |
NextDueIn(now: int64): int64 | Wie lange die Schleife höchstens schlafen darf, bis diese Komponente wieder dran ist; -1 = nie von selbst | TComponent |
Ereignisse
Keine.
Letzte Aktualisierung: 2026-08-20 — API maschinell aus Vega/Images.lyx erhoben, Beispiel mit lyxc 1.1.3O übersetzt.
