TValueListEditor — Name-Wert-Paare
Die Ansicht, die Delphi für Objektinspektoren und Einstellungsseiten benutzt: links der Name, rechts der Wert, eine Zeile je Eintrag. Gebaut auf TStringGrid — Zeichnen, Auswahl, Bildlauf und Bearbeiten stehen dort schon, hier kommt nur die Bedeutung der zwei Spalten dazu.
Unit: Vega.ValueList · Basis: TStringGrid
→ Alle Steuerelemente · Unit Vega.ValueList
Verwendung
var v: TValueListEditor := new TValueListEditor();
v.SetTitleCaptions("Name", "Wert");
v.SetDisplayOptions(doColumnTitles | doKeyColFixed);
v.SetKeyOptions(keyEdit | keyAdd | keyDelete | keyUnique);
v.SetSplitRatio(40); // 40 % Breite für die Namensspalte
v.OnValidate := PruefeWert;
v.SetParent(f);
v.InsertRowValues("Farbe", "rot");
v.InsertRowValues("Größe", "12");
Print(IntToStr(v.ItemCount())); // 2
Print(v.Keys(0)); // Farbe
Print(v.ValueOf("Größe")); // 12
Print(IntToStr(v.IndexOfKey("Farbe"))); // 0
v.SetValue("Farbe", "blau"); // über den Namen
v.SetValueAt(0, "blau"); // über die Stelle — dasselbe
v.SetItemReadOnly(0, true);
Print(IntToStr(v.CanEditCell(1, v.FindRow("Farbe")) as int64)); // 0
v.DeleteItem(0);
Zwei Sichten auf dieselben Daten
| Über die Stelle | Über den Namen |
|---|---|
Keys(i), Values(i) | ValueOf(name) |
SetKey(i, name), SetValueAt(i, wert) | SetValue(name, wert) |
DeleteItem(i) | IndexOfKey(name) → Stelle |
Delphi bietet beides ebenfalls (Keys[], Values[Name]), und beides wird gebraucht: die Anzeige zählt Zeilen, die Anwendung kennt Namen. FindRow(name) liefert die Gitterzeile (mit Kopfzeile), IndexOfKey(name) die Eintragsnummer ab 0 — der Unterschied ist die Kopfzeile.
Optionen
DisplayOptions | Wirkung |
|---|---|
doColumnTitles (1) | Kopfzeile mit den TitleCaptions zeigen |
doKeyColFixed (2) | Namensspalte bleibt beim Bildlauf stehen |
KeyOptions | Wirkung |
|---|---|
keyEdit (1) | Namen dürfen bearbeitet werden |
keyAdd (2) | Neue Einträge dürfen entstehen |
keyDelete (4) | Einträge dürfen gelöscht werden |
keyUnique (8) | Namen müssen eindeutig bleiben |
Beides sind Bitmasken, verbunden mit |; HasKeyOption(bit) fragt einzeln ab.
Besonderheiten
keyUniqueundOnValidategreifen beim Bestätigen und nehmen die Änderung zurück, wenn sie nicht durchgeht. Der Handler verneint überCancelEdit := true;ValidateRowsagt ihm, welche Zeile gemeint ist.OnStringsChangemeldet jede inhaltliche Änderung — der Ort, um „geändert“ zu vermerken oder zu speichern.SetSplitRatio(prozent)teilt die Breite zwischen Namens- und Wertspalte. Eine automatische Spaltenbreite gibt es bewusst nicht: sie hieße, bei jedem Tastendruck alle Zeilen zu messen.SetItemReadOnly(i, true)sperrt einen einzelnen Eintrag;CanEditCellist entsprechend überschrieben und liefert dannfalse.ClearItems()leert die Liste, ohne die Kopfzeile anzutasten.
Gefunden beim Bauen dieser Klasse:override fn EndEditlief zunächst ins Leere —EndEditwar in TStringGrid nichtvirtual, und lyxc nimmt das über Unit-Grenzen still hin (#1710). Aufgefallen ist es erst im Test: eine mitkeyUniqueabgelehnte Änderung blieb stehen.StartEditundEndEditsind jetzt virtuell.
Nach demselben Fall beiTEdit.DoChangegilt: wer von einer Basisklasse aus einer anderen Unit ableitet, prüft zuerst, ob die überschriebene Methode dortvirtualist.
Was bewusst fehlt
esPickListundesEllipsis— beide brauchen ein aufklappbares Control in der Zelle; das Gitter arbeitet bewusst ohne Kind-Control.LoadFromCSVStream— Vega hat kein Stream-Modell; Laden und Sichern laufen über Vega.Files.doAutoColResize— sieheSetSplitRatio.
Letzte Aktualisierung: 2026-08-20 — API maschinell aus Vega/ValueList.lyx erhoben, Beispiel mit lyxc 1.1.4B übersetzt und ausgeführt.
Eigenschaften
Alle Eigenschaften, auch die geerbten.
| Name | Typ | Bedeutung | Herkunft |
|---|---|---|---|
DisplayOptions | int64 | Anzeige als Bitmaske: doColumnTitles (1), doKeyColFixed (2) | eigen |
KeyOptions | int64 | Erlaubnisse als Bitmaske: keyEdit (1), keyAdd (2), keyDelete (4), keyUnique (8) | eigen |
TitleCaptions | TStringList | Beschriftungen der beiden Spaltenköpfe | eigen |
ValidateRow | int64 | Zeile, die OnValidate gerade prüft | eigen |
CancelEdit | bool | Im OnValidate-Handler auf true setzen — die Änderung wird zurückgenommen | eigen |
ColCount | int64 | Zahl der Spalten | TStringGrid |
RowCount | int64 | Zahl der Zeilen | TStringGrid |
FixedCols | int64 | Feste Spalten (bleiben beim Scrollen stehen) | TStringGrid |
FixedRows | int64 | Feste Zeilen (bleiben beim Scrollen stehen) | TStringGrid |
Cells | TStringList | Alle Zellen in einer flachen Liste (row * ColCount + col) | TStringGrid |
ColWidths | TIntArray | Breite je Spalte | TStringGrid |
DefaultColWidth | int64 | Vorgabebreite einer Spalte | TStringGrid |
RowHeight | int64 | Höhe einer Zeile | TStringGrid |
Col | int64 | Aktuelle Spalte | TStringGrid |
Row | int64 | Aktuelle Zeile | TStringGrid |
TopRow | int64 | Erste sichtbare Zeile | TStringGrid |
LeftCol | int64 | Erste sichtbare Spalte | TStringGrid |
RowSelect | bool | Ganze Zeile statt einzelner Zelle auswählen | TStringGrid |
GridLines | bool | Gitterlinien zeichnen | TStringGrid |
KeyNavigation | bool | Wandern mit den Pfeiltasten | TStringGrid |
ShowHeader | bool | Kopfzeile zeigen | TStringGrid |
CancelSelect | bool | Im OnSelectingCell-Handler auf true setzen — der Wechsel unterbleibt | TStringGrid |
Editable | bool | Zellen dürfen bearbeitet werden | TStringGrid |
EditorMode | bool | Bearbeitung läuft gerade (nur lesen) | TStringGrid |
DrawCol | int64 | Im OnDrawCell: Spalte der Zelle | TStringGrid |
DrawRow | int64 | Im OnDrawCell: Zeile der Zelle | TStringGrid |
DrawRect | TRect | Im OnDrawCell: Fläche der Zelle | TStringGrid |
Parent | TControl | Zeichnerisches Elternteil | TControl |
Children | TObjectList | Kinder | TControl |
ChildCount | int64 | Anzahl der Kinder | TControl |
Left | int64 | Position relativ zum Elternteil | TControl |
Top | int64 | Position relativ zum Elternteil | TControl |
Width | int64 | Breite | TControl |
Height | int64 | Höhe | TControl |
Visible | bool | Wird gezeichnet und nimmt am Layout teil | TControl |
Enabled | bool | Nimmt Eingaben an | TControl |
Focused | bool | Hat den Tastaturfokus (nur lesen) | TControl |
Hovered | bool | Zeiger steht darüber | TControl |
Pressed | bool | Maustaste ist gedrückt | TControl |
CanFocus | bool | Kann den Fokus überhaupt bekommen | TControl |
Align | int64 | Ausrichtung: AL_NONE (0), AL_TOP (1), AL_BOTTOM (2), AL_LEFT (3), AL_RIGHT (4), AL_CLIENT (5) | TControl |
Anchors | int64 | Bitmaske: ANCHOR_LEFT (1), ANCHOR_TOP (2), ANCHOR_RIGHT (4), ANCHOR_BOTTOM (8) | TControl |
Font | TFont | Eigene Schrift oder 0 = die des Elternteils (Zeiger, keine Kopie) | TControl |
Cursor | int64 | Mauszeiger (CUR_*); CUR_DEFAULT erbt vom Elternteil | TControl |
TabStop | bool | Wird per Tabulator angesteuert | TControl |
TabOrder | int64 | Reihenfolge beim Tabulator | TControl |
HelpType | int64 | Art der Hilfeanbindung | TControl |
HelpContext | int64 | Hilfekennung | TControl |
HelpKeyword | pchar | Hilfestichwort | TControl |
BorderWidth | int64 | Abstand zwischen Rand und Kindern | TControl |
AutoSize | bool | Größe aus dem Inhalt ableiten | TControl |
MinWidth | int64 | Kleinste Breite; 0 = keine Grenze | TControl |
MinHeight | int64 | Kleinste Höhe; 0 = keine Grenze | TControl |
MaxWidth | int64 | Größte Breite; 0 = keine Grenze | TControl |
MaxHeight | int64 | Größte Höhe; 0 = keine Grenze | TControl |
DragMode | int64 | DM_MANUAL (0), DM_AUTOMATIC (1) | TControl |
PopupMenuPtr | int64 | Kontextmenü (TPopupMenu als Zahl) | TControl |
ActionPtr | int64 | Verknüpfter Befehl (TAction) | TControl |
Hint | pchar | Kurztext | TControl |
ShowHint | bool | Kurztext anzeigen — wirkt auch auf Kinder | TControl |
Caption | pchar | Beschriftung — hält nur den Zeiger, keine Kopie | TControl |
Dirty | bool | Neuzeichnen steht aus | TControl |
AutoRepaint | bool | Nach Änderungen selbst neu zeichnen | TControl |
PendingRepaint | bool | Neuzeichnen ist angefordert | TControl |
Color | TColor | Grundfarbe, sofern das Theme nichts vorgibt | TControl |
Theme | TTheme | Eigenes Theme statt des voreingestellten | TControl |
StyleType | int64 | Typnummer im Stylesheet | TControl |
StyleRole | int64 | Rolle im Stylesheet (SetRole) | TControl |
StyleClasses | TIntArray | Stilklassen | TControl |
StyleClassCount | int64 | Zahl der Stilklassen | TControl |
ExplicitStyle | TStyleSet | Werte, die den Themewechsel überleben | TControl |
ScopeStyle | TStyleSheet | Stylesheet für diesen Teilbaum | TControl |
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(): void | Konstruktor | eigen |
Destroy(): void | Gibt eigene Ressourcen frei | eigen |
SetTitleCaptions(links: pchar, rechts: pchar): void | Beschriftungen der beiden Spaltenköpfe setzen | eigen |
SetDisplayOptions(v: int64): void | Anzeigeoptionen setzen | eigen |
SetKeyOptions(v: int64): void | Erlaubnisse setzen | eigen |
HasKeyOption(bit: int64): bool | Ist diese Erlaubnis gesetzt | eigen |
ItemCount(): int64 | Anzahl der Einträge (ohne Kopfzeile) | eigen |
Keys(index: int64): pchar | Name des Eintrags an dieser Stelle | eigen |
Values(index: int64): pchar | Wert des Eintrags an dieser Stelle | eigen |
IndexOfKey(name: pchar): int64 | Eintragsnummer zu einem Namen, -1 wenn es ihn nicht gibt | eigen |
FindRow(name: pchar): int64 | Gitterzeile zu einem Namen — Kopfzeile eingerechnet | eigen |
ValueOf(name: pchar): pchar | Wert zu einem Namen | eigen |
InsertRowValues(name: pchar, wert: pchar): int64 | Eintrag anhängen; liefert die Gitterzeile | eigen |
SetValue(name: pchar, wert: pchar): void | Wert über den Namen setzen | eigen |
SetKey(index: int64, name: pchar): void | Namen eines Eintrags ändern | eigen |
SetValueAt(index: int64, wert: pchar): void | Wert über die Stelle setzen | eigen |
DeleteItem(index: int64): bool | IndexOfKey(name) → Stelle | eigen |
ClearItems(): void | Alle Einträge entfernen, Kopfzeile bleibt | eigen |
SetItemReadOnly(index: int64, v: bool): void | Einzelnen Eintrag sperren | eigen |
ItemReadOnly(index: int64): bool | Ist der Eintrag gesperrt | eigen |
CanEditCell(col: int64, row: int64): bool | Darf diese Zelle bearbeitet werden — überschreibbar | eigen |
EndEdit(save: bool): void | Bearbeitung beenden; save übernimmt, sonst verwerfen | eigen |
DoKeyDown(key: int64, modifiers: int64): void | Taste behandeln (überschreibbar) | eigen |
SetSplitRatio(prozent: int64): void | Breitenverhältnis der beiden Spalten in Prozent | eigen |
DoResize(): void | Größenänderung behandeln (überschreibbar) | eigen |
StartEdit(keep: bool): bool | Bearbeitung beginnen; keep behält den bisherigen Inhalt | TStringGrid |
EditText(): pchar | Inhalt des Bearbeitungspuffers | TStringGrid |
SetEditText(s: pchar): void | Bearbeitungspuffer setzen | TStringGrid |
SetSize(cols: int64, rows: int64): void | Bildfläche anlegen; false, wenn VEGA_MAX_IMAGE_PIXELS überschritten wird | TStringGrid |
InsertRow(index: int64): void | Zeile an dieser Stelle einfügen, alles darunter rückt nach | TStringGrid |
DeleteRow(index: int64): void | Zeile an dieser Stelle entfernen | TStringGrid |
CellIndex(col: int64, row: int64): int64 | Interner Index einer Zelle | TStringGrid |
GetCell(col: int64, row: int64): pchar | Zelleninhalt lesen | TStringGrid |
SetCell(col: int64, row: int64, s: pchar): void | Zeichen an diese Stelle setzen | TStringGrid |
ColWidth(col: int64): int64 | Spaltenbreite lesen | TStringGrid |
SetColWidth(col: int64, w: int64): void | Spaltenbreite setzen | TStringGrid |
FixedWidth(): int64 | Breite der festen Spalten | TStringGrid |
FixedHeight(): int64 | Höhe der festen Zeilen | TStringGrid |
VisibleRows(): int64 | Sichtbare Zeilen | TStringGrid |
ClampSelection(): void | Auswahl in gültige Grenzen bringen | TStringGrid |
SetSelection(col: int64, row: int64): void | Auswahl setzen | TStringGrid |
ScrollToCell(): void | Ausgewählte Zelle sichtbar machen | TStringGrid |
ColLeft(col: int64): int64 | Linke Kante einer Spalte | TStringGrid |
RowTop(row: int64): int64 | Obere Kante einer Zeile | TStringGrid |
ColAtX(x: int64): int64 | Spalte an einer x-Position | TStringGrid |
RowAtY(y: int64): int64 | Zeile an einer y-Position | TStringGrid |
Paint(canvas: TCanvas): void | Darstellung (überschreibbar) | TStringGrid |
DoMouseDown(x: int64, y: int64, button: int64): void | Maustaste behandeln (überschreibbar) | TStringGrid |
DoChar(cp: int64): void | Zeichen behandeln (überschreibbar) | TStringGrid |
DoMouseWheel(delta: int64): void | Mausrad behandeln (überschreibbar) | TStringGrid |
Init(): void | Vorgaben von TControl setzen — in eigenen Klassen als erste Zeile im Create | TControl |
SetLeft(v: int64): void | Position setzen und neu zeichnen | TControl |
GetLeft(): int64 | Position lesen | TControl |
SetTop(v: int64): void | Position setzen und neu zeichnen | TControl |
GetTop(): int64 | Position lesen | TControl |
SetWidth(v: int64): void | Breite setzen und neu zeichnen | TControl |
GetWidth(): int64 | Breite lesen | TControl |
SetHeight(v: int64): void | Höhe setzen und neu zeichnen | TControl |
GetHeight(): int64 | Höhe lesen | TControl |
SetVisible(v: bool): void | Sichtbarkeit setzen | TControl |
GetVisible(): bool | Sichtbarkeit lesen | TControl |
SetEnabled(v: bool): void | Bedienbarkeit setzen | TControl |
GetEnabled(): bool | Bedienbarkeit lesen | TControl |
SetCaption(v: pchar): void | Beschriftung setzen und neu zeichnen | TControl |
GetCaption(): pchar | Beschriftung lesen | TControl |
SetHint(v: pchar): void | Kurztext setzen | TControl |
GetHint(): pchar | Kurztext lesen | TControl |
SetName(v: pchar): void | Namen setzen | TControl |
IsClass(name: pchar): bool | Ist von dieser Klasse | TControl |
FindByName(name: pchar): TControl | Kind über Name finden | TControl |
FindTyped(name: pchar, klasse: pchar): TControl | Kind über Name und Klasse finden | TControl |
CountClass(klasse: pchar): int64 | Kinder dieser Klasse zählen | TControl |
GetName(): pchar | Namen lesen | TControl |
OwnerControl(): TControl | Der Besitzer als TControl — der kurze Weg zum Formular | TControl |
GetParentComponent(): TComponent | Übergeordnete Komponente im Baum | TControl |
EffectiveFont(): TFont | Tatsächlich geltende Schrift | TControl |
SetFont(f: TFont): void | Schrift setzen | TControl |
HasOwnFont(): bool | Eigene Schrift gesetzt | TControl |
SetCursor(v: int64): void | Mauszeiger setzen | TControl |
GetCursor(): int64 | Mauszeiger lesen | TControl |
EffectiveCursor(): int64 | Tatsächlich geltender Zeiger | TControl |
SetConstraints(minW: int64, minH: int64, maxW: int64, maxH: int64): void | Größengrenzen setzen | TControl |
ClampWidth(w: int64): int64 | Breite auf die Grenzen bringen | TControl |
ClampHeight(h: int64): int64 | Höhe auf die Grenzen bringen | TControl |
HasHint(): bool | Hat einen Kurztext | TControl |
HintsAllowed(): bool | Kurztexte hier erlaubt | TControl |
SetColor(v: TColor): void | Farbe setzen | TControl |
GetColor(): TColor | Farbe lesen | TControl |
SetAlign(v: int64): void | Ausrichtung setzen | TControl |
GetAlign(): int64 | Ausrichtung lesen | TControl |
SetAnchors(v: int64): void | Anker setzen | TControl |
GetAnchors(): int64 | Anker lesen | TControl |
SetTag(v: int64): void | Tag setzen | TControl |
GetTag(): int64 | Tag lesen | TControl |
SetCanFocus(v: bool): void | Fokusfähigkeit setzen | TControl |
GetCanFocus(): bool | Fokusfähigkeit lesen | TControl |
SetPosition(x: int64, y: int64): void | Position in einem Zug | TControl |
SetBounds(x: int64, y: int64, w: int64, h: int64): void | Position und Größe in einem Zug | TControl |
SetRole(name: pchar): void | Semantische Rolle fürs Theme („primary“, „danger“ …) | TControl |
AddStyleClass(name: pchar): void | Stilklasse hinzufügen | TControl |
ClearStyleClasses(): void | Stilklassen leeren | TControl |
SetStyle(prop: int64, value: int64): void | Ausdrückliche Stilwerte setzen | TControl |
ResetStyle(prop: int64): void | Ausdrückliche Stilwerte verwerfen | TControl |
HasExplicitStyle(prop: int64): bool | Hat ausdrückliche Stilwerte | TControl |
StyleStates(): int64 | Zustände fürs Theme (ST_*) | TControl |
StyleQueryFor(scale: int64): TStyleQuery | Stilabfrage aufbauen | TControl |
ResolvedPartStyle(partName: pchar, partStates: int64): TStyleSet | Aufgelöste Stilwerte eines Teils | TControl |
ResolvedStyle(): TStyleSet | Aufgelöste Stilwerte (nach Gebrauch Destroy()) | TControl |
ClientRect(): TRect | Fläche ohne Rahmen — die Zeichenfläche | TControl |
SetBorderWidth(v: int64): void | Abstand zwischen Rand und Kindern setzen | TControl |
BoundsRect(): TRect | Fläche einschließlich Rahmen | TControl |
AddChild(c: TControl): void | Kind einhängen | TControl |
ChildAt(i: int64): TControl | Kind über den Index | TControl |
RemoveChild(c: TControl): void | Kind aushängen | TControl |
Root(): TControl | Wurzel des Baums | TControl |
IsVisible(): bool | Tatsächlich sichtbar (auch die Eltern) | TControl |
IsEnabled(): bool | Tatsächlich bedienbar | TControl |
Show(): void | Sichtbar machen | TControl |
Hide(): void | Verbergen | TControl |
BringToFront(): void | Nach vorn | TControl |
SendToBack(): void | Nach hinten | TControl |
CanSetFocus(): bool | Kann den Fokus jetzt bekommen | TControl |
SetFocus(): bool | Fokus holen | TControl |
Update(): void | Sofort zeichnen | TControl |
Refresh(): void | Neu zeichnen | TControl |
ClientWidth(): int64 | Breite der Zeichenfläche | TControl |
ClientHeight(): int64 | Höhe der Zeichenfläche | TControl |
ClientOrigin(): TPoint | Ursprung der Zeichenfläche auf dem Bildschirm | TControl |
ClientToScreen(x: int64, y: int64): TPoint | Punkt in Bildschirmkoordinaten | TControl |
ScreenToClient(x: int64, y: int64): TPoint | Punkt in Elementkoordinaten | TControl |
ControlCount(): int64 | Zahl der Kinder | TControl |
Controls(i: int64): TControl | Kind über den Index | TControl |
HasParent(): bool | Hängt die Komponente in einem Baum | TControl |
GetTopParent(): TControl | Oberstes Elternteil | TControl |
IsParentOf(c: TControl): bool | Ist Vorfahr von | TControl |
ContainsControl(c: TControl): bool | Enthält dieses Element | TControl |
ControlAtPos(x: int64, y: int64): TControl | Element an einer Position | TControl |
FindChildControl(name: pchar): TControl | Direktes Kind über den Namen | TControl |
GetTextLen(): int64 | Länge der Beschriftung | TControl |
GetTextBuf(dst: TTextBuffer): int64 | Beschriftung in einen Puffer | TControl |
SetTextBuf(src: pchar): void | Beschriftung aus einem Puffer | TControl |
SetTabOrder(v: int64): void | Tabulatorreihenfolge setzen | TControl |
GetTabOrder(): int64 | Tabulatorreihenfolge lesen | TControl |
PreferredWidth(): int64 | Wunschbreite aus dem Inhalt | TControl |
PreferredHeight(): int64 | Wunschhöhe aus dem Inhalt | TControl |
SetAutoSize(v: bool): void | Automatische Größe schalten | TControl |
ApplyAutoSize(): void | Controlgröße auf die Bildgröße ziehen (wirkt nur bei AutoSize) | TControl |
Showing(): bool | Tatsächlich zu sehen: selbst sichtbar und jeder Vorfahr sichtbar | TControl |
DoubleBuffered(): bool | Auskunft, ob doppelt gepuffert gezeichnet wird — in Vega immer true und nicht einstellbar | TControl |
InsertControl(c: TControl): void | Kind aufnehmen (Delphi-Name für SetParent) | TControl |
RemoveControl(c: TControl): void | Kind aushängen | TControl |
GetControlIndex(c: TControl): int64 | Stelle eines Kindes in der Liste — zugleich die Z-Ordnung | TControl |
SetControlIndex(c: TControl, index: int64): void | Kind an eine andere Stelle schieben; BringToFront und SendToBack sind die Sonderfälle | TControl |
DisableAlign(): void | Layout anhalten (Delphi-Name für BeginUpdate) | TControl |
EnableAlign(): void | Layout wieder zulassen (Delphi-Name für EndUpdate) | TControl |
ReAlign(): void | Kinder neu ausrichten | TControl |
PaintTo(canvas: TCanvas, x: int64, y: int64): void | Ganzen Teilbaum an eine Stelle einer beliebigen Zeichenfläche malen — für Vorschaubilder und Ausdrucke | TControl |
GetChildrenRect(): TRect | Umschließendes Rechteck aller sichtbaren Kinder, in eigenen Koordinaten; leer, wenn es keine gibt | TControl |
ScrollBy(dx: int64, dy: int64): void | Alle Kinder um dx,dy verschieben | TControl |
ScaleBy(m: int64, d: int64): void | Größe und Lage im Verhältnis m/d ändern, samt aller Kinder — der Weg zu anderer Pixeldichte | TControl |
GetTabOrderList(dst: TObjectList): void | Fokussierbare Controls in Tabulator-Reihenfolge sammeln; steigt in Kinder ab | TControl |
ToAbsolute(x: int64, y: int64): TPoint | Punkt in absolute Koordinaten | TControl |
HitTest(x: int64, y: int64): TControl | Element an einer Position (überschreibbar) | TControl |
Invalidate(): void | Neuzeichnen anfordern | TControl |
Repaint(): void | Sofort neu zeichnen | TControl |
SetParent(v: TControl): void | In einen Container einhängen | TControl |
GetParent(): TControl | Elternteil lesen | TControl |
SetAutoRepaint(v: bool): void | Selbsttätiges Neuzeichnen schalten | TControl |
GetAutoRepaint(): bool | Einstellung lesen | TControl |
BeginUpdate(): void | Änderungen bündeln (kein Neuzeichnen bis EndUpdate) | TControl |
EndUpdate(): void | Bündelung beenden und neu zeichnen | TControl |
EffectiveTheme(): TTheme | Tatsächlich geltendes Theme | TControl |
PaintTree(canvas: TCanvas): void | Sich und die Kinder zeichnen | TControl |
PaintChildren(canvas: TCanvas): void | Kinder zeichnen (überschreibbar) | TControl |
DoClick(): void | Klick behandeln (überschreibbar) | TControl |
DoDblClick(): void | Doppelklick behandeln (überschreibbar) | TControl |
DoStartDrag(): void | Ziehgeste beginnen (überschreibbar) | TControl |
DoDragOver(source: TControl, x: int64, y: int64): bool | Annahme prüfen (überschreibbar) | TControl |
DoDragDrop(source: TControl, x: int64, y: int64): void | Ablegen behandeln (überschreibbar) | TControl |
DoEndDrag(target: TControl, x: int64, y: int64): void | Geste beenden (überschreibbar) | TControl |
DoKeyUp(key: int64, modifiers: int64): void | Loslassen behandeln (überschreibbar) | TControl |
DoContextPopup(x: int64, y: int64): bool | Kontextmenü anfordern (überschreibbar) | TControl |
DoMouseUp(x: int64, y: int64, button: int64): void | Loslassen behandeln (überschreibbar) | TControl |
DoMouseMove(x: int64, y: int64, button: int64): void | Bewegung behandeln (überschreibbar) | TControl |
SetBackendRef(b: int64): void | Backend bekannt machen | TControl |
DoMouseEnter(): void | Betreten behandeln (überschreibbar) | TControl |
DoMouseLeave(): void | Verlassen behandeln (überschreibbar) | TControl |
DoFocusIn(): void | Fokus erhalten (überschreibbar) | TControl |
DoFocusOut(): void | Fokus verloren (überschreibbar) | TControl |
ApplyLayout(): void | Kinder ausrichten — eine Ebene tief | TControl |
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 |
HasState(bits: int64): bool | Sind diese Zustandsbits gesetzt | TComponent |
SetState(bits: int64): void | Zustandsbits setzen | TComponent |
ClearState(bits: int64): void | Zustandsbits löschen | 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
| Name | Typ | Wann | Herkunft |
|---|---|---|---|
OnValidate | TValidateEvent | Beim Bestätigen einer Zelle; verneint über CancelEdit | eigen |
OnStringsChange | TNotifyEvent | Nach jeder inhaltlichen Änderung der Liste | eigen |
OnSelectCell | TNotifyEvent | Zelle gewechselt | TStringGrid |
OnSelectingCell | TNotifyEvent | Bevor gewechselt wird; CancelSelect verhindert es | TStringGrid |
OnDrawCell | TDrawCellEvent | Zelle selbst zeichnen; DrawCol/DrawRow/DrawRect nennen die Stelle | TStringGrid |
OnSetEditText | TNotifyEvent | Der Bearbeitungspuffer hat sich geändert | TStringGrid |
OnClick | TNotifyEvent | Klick | TControl |
OnDblClick | TNotifyEvent | Doppelklick | TControl |
OnMouseDown | TMouseEvent | Maustaste gedrückt; Koordinaten relativ zum Control | TControl |
OnMouseUp | TMouseEvent | Maustaste losgelassen | TControl |
OnMouseMove | TMouseEvent | Zeiger bewegt sich über dem Control | TControl |
OnMouseEnter | TNotifyEvent | Zeiger betritt die Fläche | TControl |
OnMouseLeave | TNotifyEvent | Zeiger verlässt die Fläche | TControl |
OnKeyDown | TKeyEvent | Taste gedrückt (KEY_*, MOD_*) | TControl |
OnKeyUp | TKeyEvent | Taste losgelassen | TControl |
OnChar | TCharEvent | Eingegebenes Zeichen (Unicode-Codepoint) | TControl |
OnMouseWheel | TWheelEvent | Mausrad; delta ist +1 oder -1 | TControl |
OnPaint | TPaintEvent | Zeichnen | TControl |
OnResize | TNotifyEvent | Größe geändert | TControl |
OnFocusIn | TNotifyEvent | Fokus erhalten | TControl |
OnFocusOut | TNotifyEvent | Fokus verloren | TControl |
OnEnter | TNotifyEvent | Element betreten | TControl |
OnExit | TNotifyEvent | Element verlassen | TControl |
OnKeyPress | TCharEvent | Wie OnChar | TControl |
OnChangeBounds | TNotifyEvent | Geometrie geändert | TControl |
OnShowHint | TNotifyEvent | Kurztext erscheint | TControl |
OnContextPopup | TMouseEvent | Kontextmenü angefordert | TControl |
OnStartDrag | TNotifyEvent | Ziehgeste beginnt | TControl |
OnDragOver | TDragOverEvent | Über einem möglichen Ziel; Rückgabe true = annehmen | TControl |
OnDragDrop | TDragDropEvent | Abgelegt | TControl |
OnEndDrag | TDragEndEvent | Geste beendet; target ist 0 bei Abbruch | TControl |
Letzte Aktualisierung: 2026-08-20 — API maschinell aus Vega/ValueList.lyx erhoben, Beispiel mit lyxc 1.1.4B übersetzt und ausgeführt.
