TLabeledEdit — Eingabefeld mit Beschriftung

Ein TEdit mit fest verbundener Beschriftung. Statt Feld und TLabel getrennt zu setzen und beim Verschieben beide nachzuziehen, wandert die Beschriftung hier mit.

Unit: vega.extctrls · Basis: TEdit

Alle Steuerelemente · Klassenbaum · Guide: Komponenten


Vererbung

Kette: TComponentTControlTCustomEditTEditTLabeledEdit

Direkte Nachfahren: keine — diese Klasse wird nicht weiter abgeleitet.

Quelle: vega/extctrls.lyx


Verwendung

var e: TLabeledEdit := new TLabeledEdit("Name:");
e.SetBounds(120, 40, 200, 24);      // Position des FELDES
e.SetLabelPosition(LP_LEFT);
e.SetLabelSpacing(8);
e.SetParent(f);

e.EditLabel.SetFontStyle(FS_BOLD);  // die Beschriftung ist ein echtes TLabel


Besonderheiten

  • Die Beschriftung gehört dem Feld. Wer das Feld wegwirft, wirft sie mit weg — EditLabel nicht selbst zerstören.
  • LabelPosition bestimmt die Seite, LabelSpacing den Abstand. Die Bounds gelten für das Feld; die Beschriftung wird daneben gesetzt und liegt damit außerhalb.
  • Alles Übrige — Auswahl, Zwischenablage, OnChange — steht bei TEdit.

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
AutoSelect bool Beim Hineinspringen alles auswaehlen — so ersetzt die nächste Eingabe den alten Inhalt TCustomEdit
Backend IVegaBackend Die Zwischenablage laeuft über vega.clipbrd, nicht mehr über einen eigenen Backend-Verweis: die eine Ablage des Prozesses bekommt ihr Backend von TApplication.Init, und zwar BEVOR … TCustomEdit
CaretPos int64 Byteposition der Schreibmarke TCustomEdit
CaretVisible bool Blinkt die Marke gerade sichtbar? Die Zeitsteuerung macht TApplication über einen Timer, der CaretVisible umschaltet TCustomEdit
CharCase int64 Gross-/Kleinschreibung erzwingen, siehe TEditCharCase TCustomEdit
HideSelection bool Auswahl auch dann zeigen, wenn das Feld den Fokus verloren hat? Delphi-Vorgabe: nein TCustomEdit
MaxLength int64 Liest MaxLength TCustomEdit
Modified bool Hat der NUTZER seit dem letzten Zuruecksetzen etwas geaendert? Ein SetText aus dem Programm zählt nicht — sonst wäre die Frage „muss gespeichert werden?“ nach jedem Laden mit ja beantwortet TCustomEdit
NumbersOnly bool Nur Ziffern annehmen. Delphis NumbersOnly: gefiltert wird die EINGABE, nicht SetText — ein Programm darf weiter schreiben, was es will, sonst kann es einen Fehlwert nicht mehr anzeigen TCustomEdit
ReadOnly bool Nur lesen, keine Eingabe TCustomEdit
ScrollX int64 Waagerechte Verschiebung in Pixeln, damit die Marke sichtbar bleibt TCustomEdit
SelStart int64 Ankerpunkt der Auswahl; gleich CaretPos heißt „nichts ausgewählt“ TCustomEdit
Text TTextBuffer [[lyx_-_programmiersprache:vega:controls:tcustomedit|TCustomEdit
TextHint pchar Graue Andeutung im leeren Feld („Suchbegriff…“). Wird nicht ausgewählt, nicht kopiert und nicht mitgezaehlt — sie ist kein Text, sondern eine Beschriftung, die im Feld sitzt TCustomEdit
UndoBuffer TTextBuffer Ein Schritt zurück. Delphi merkt sich genau einen Stand; ein zweites Undo stellt den Zustand davor wieder her (also Redo). Mehr Stufen wären eine eigene Verwaltung — die kommt mit … TCustomEdit
UndoCaret int64 Position der Schreibmarke im Rückgängig-Puffer TCustomEdit
UndoValid bool Ob der Rückgängig-Puffer belegt ist TCustomEdit
WantReturns bool Nimmt das Feld Eingabe- und Tabtaste selbst an? Nur mehrzeilige Felder werten das aus; die Felder stehen trotzdem HIER, weil jede Ableitung über InitEdit hochkommt und TMemo.Create nicht … TCustomEdit
WantTabs bool Tabulator geht ins Feld statt zum nächsten Element TCustomEdit
Alignment int64 Waagerechte Ausrichtung des Textes (TA_LEFT/TA_CENTER/TA_RIGHT) TEdit
BorderStyle int64 Rahmenart, wie in Delphi: ohne oder einfach. Vorgabe ist der vertiefte Rahmen, an dem man ein Eingabefeld erkennt TEdit
PasswordChar int64 Statt der Zeichen wird dieses Zeichen gezeigt (Passwortfeld). 0 = normaler Text. Delphis EchoMode heißt bei uns so: emPassword ist PasswordChar != 0, emNone gibt es nicht — ein Feld, das … TEdit
EditLabel TLabel Die Beschriftung. Sie gehört diesem Feld: wer das Feld wegwirft, wirft sie mit weg eigen
LabelPosition int64 Seite, auf der die Beschriftung sitzt eigen
LabelSpacing int64 Abstand zwischen Beschriftung und Feld 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
ApplyCharCase(cp: int64): int64 Ein Zeichen durch die Schreibweisenregel schicken. Nur ASCII — Umlaute richtig zu behandeln braucht eine Tabelle, und die gehört nicht in ein Eingabefeld TCustomEdit
Backspace(): void Auch Loeschen ist eine Änderung durch den Nutzer — aber erst NACH der ReadOnly-Pruefung, sonst gilt ein Feld als geaendert, in dem gar nichts passieren konnte TCustomEdit
CanUndo(): bool Ob ein Rückgängig möglich ist TCustomEdit
Changed(): void Änderung melden TCustomEdit
Clear(): void Auswahl von Hand setzen, wie SelStart/SelLength in Delphi. Feld leeren. In Delphi an TCustomEdit, deshalb hier und nicht in TEdit — TMemo braucht dasselbe TCustomEdit
ClearSelection(): void Auswahl aufheben TCustomEdit
ClearUndo(): void Verwirft den Rückgängig-Puffer TCustomEdit
CopyToClipboard(): bool Ausgewaehlten Text kopieren. Ohne Auswahl passiert nichts — wie überall TCustomEdit
CutToClipboard(): bool Ausschneiden TCustomEdit
DeleteForward(): void Zeichen rechts löschen TCustomEdit
DeleteSelection(): bool Ausgewaehlten Text löschen. Liefert true, wenn etwas entfernt wurde TCustomEdit
Destroy(): void Gibt eigene Ressourcen frei TCustomEdit
GetText(): pchar Inhalt lesen TCustomEdit
HasSelection(): bool Es ist etwas ausgewählt TCustomEdit
InitEdit(): void Grundzustand des Eingabefelds TCustomEdit
InsertChar(cp: int64): void Zeichen einfügen TCustomEdit
IsWordByte(b: int64): bool Zaehlt ein Zeichen zum Wort? Ziffern, Buchstaben und der Unterstrich — alles ab 128 gilt als Buchstabe, damit Umlaute nicht mitten im Wort eine Grenze bilden. Eine echte Unicode-Tabelle … TCustomEdit
MoveCaret(pos: int64, keep: bool): void Marke setzen. `keep` behaelt den Ankerpunkt (Umschalt+Pfeil erweitert die Auswahl), sonst wird sie aufgehoben TCustomEdit
PasteFromClipboard(): bool Einfuegen ersetzt eine bestehende Auswahl — so erwartet man es TCustomEdit
SaveUndo(): void Den jetzigen Stand als Rueckfallpunkt merken. Wird VOR jeder Änderung durch den Nutzer gerufen TCustomEdit
SelHigh(): int64 Größere Grenze der Auswahl TCustomEdit
SelLength(): int64 Länge der Auswahl in Bytes TCustomEdit
SelLow(): int64 Kleinere Grenze der Auswahl TCustomEdit
SelTextTo(dst: TTextBuffer): void Der ausgewählte Text. Der Puffer gehört dem AUFRUFER — er hat ihn mitgebracht, damit hier nichts angelegt wird, das niemand freigibt TCustomEdit
SelectAll(): void Alles auswählen TCustomEdit
SelectWordAt(pos: int64): void Das Wort an einer Stelle auswaehlen — der Doppelklick. Steht die Stelle nicht IN einem Wort (Leerraum, Satzzeichen), wird das Zeichen darunter genommen: eine Auswahl von Länge null wäre … TCustomEdit
SetCharCase(v: int64): void Setzt CharCase TCustomEdit
SetModified(v: bool): void Setzt Modified TCustomEdit
SetSelText(s: pchar): void Die Auswahl durch anderen Text ersetzen. Ohne Auswahl wird an der Marke eingefuegt — genau wie Delphis SelText-Zuweisung TCustomEdit
SetSelection(start: int64, laenge: int64): void Auswahl auf start mit laenge setzen TCustomEdit
SetText(s: pchar): void Setzt Text TCustomEdit
SetTextHint(s: pchar): void Setzt TextHint TCustomEdit
ShowingTextHint(): bool Zeigt das Feld gerade nur seine Andeutung? TCustomEdit
TextLength(): int64 Länge TCustomEdit
Undo(): bool Tauschen statt überschreiben: so ist das zweite Undo das Redo TCustomEdit
WordEnd(pos: int64): int64 Ende des Wortes, in dem pos liegt TCustomEdit
WordStart(pos: int64): int64 Anfang des Wortes, in dem pos liegt TCustomEdit
Create(text: pchar): void Anlegen; new TLabeledEdit() TEdit
Destroy(): void Gibt eigene Ressourcen frei TEdit
PosFromX(x: int64): int64 Textposition aus x-Koordinate TEdit
TextStartX(): int64 Byteposition zu einer Pixelposition (Mausklick). Rundet auf die naechstgelegene Zeichengrenze — wer knapp hinter die Mitte eines Zeichens klickt, erwartet die Marke dahinter. Wo die … TEdit
WidthUpTo(pos: int64): int64 Pixelbreite des Textes bis zu einer Byteposition — daraus ergibt sich, wo die Marke steht und wohin ein Mausklick zeigt TEdit
Create(caption: pchar): void Anlegen; new TLabeledEdit() eigen
Destroy(): void Gibt eigene Ressourcen frei eigen
SetLabelCaption(s: pchar): void Setzt den Text der Beschriftung eigen
SetLabelPosition(v: int64): void Setzt LabelPosition eigen
SetLabelSpacing(v: int64): void Setzt LabelSpacing eigen
SyncLabel(): void Die Beschriftung an ihren Platz stellen. Oeffentlich, weil ein Aufrufer sie auch außerhalb des Zeichnens brauchen kann — etwa um zu prüfen, wo sie liegt eigen

Ereignisse

Name Typ Wann Herkunft
OnChange TNotifyEvent Der Inhalt oder die Auswahl hat sich geändert TCustomEdit

Letzte Aktualisierung: 2026-09-05 — Seite neu angelegt; erhoben aus vega/extctrls.lyx im Repo lyx-vcl.