====== Vega.Extras — Die kleinen Steuerelemente ====== Neun Elemente, die nichts grundsätzlich Neues können: sie setzen zusammen, was [[lyx_-_programmiersprache:vega:units:stdctrls|Vega.StdCtrls]] und [[lyx_-_programmiersprache:vega:units:listctrls|Vega.ListCtrls]] schon können. Ihr Nutzen liegt darin, dass man sie nicht jedes Mal von Hand zusammenbaut — Trennlinien, Formen, flache Knöpfe, eine Auswahlgruppe, eine Liste mit Kästchen, ein Pfeilpaar, eine Fläche zum Selberzeichnen. Quelldatei: ''Vega/Extras.lyx'' → [[lyx_-_programmiersprache:vega:units|Alle Units]] · [[lyx_-_programmiersprache:vega:controls|Alle Steuerelemente]] · [[lyx_-_programmiersprache:vega|Vega VCL]] ---- ===== Klassen ===== ^ Klasse ^ Basis ^ Zweck ^ | [[lyx_-_programmiersprache:vega:controls:tbevel|TBevel]] | [[lyx_-_programmiersprache:vega:controls:tcontrol|TControl]] | Trennlinie oder Rahmen, rein zierend — nimmt keine Eingaben an | | [[lyx_-_programmiersprache:vega:controls:tbitbtn|TBitBtn]] | [[lyx_-_programmiersprache:vega:controls:tbutton|TButton]] | Knopf mit Bild und Standardrolle (''BK_OK'', ''BK_CANCEL'' …) | | [[lyx_-_programmiersprache:vega:controls:tchecklistbox|TCheckListBox]] | [[lyx_-_programmiersprache:vega:controls:tlistbox|TListBox]] | Liste, in der jeder Eintrag ein Kästchen trägt | | [[lyx_-_programmiersprache:vega:controls:tpaintbox|TPaintBox]] | [[lyx_-_programmiersprache:vega:controls:tcontrol|TControl]] | Leere Fläche für ''OnPaint'' — der Weg zu eigener Darstellung ohne eigene Klasse | | [[lyx_-_programmiersprache:vega:controls:tradiogroup|TRadioGroup]] | [[lyx_-_programmiersprache:vega:controls:tgroupbox|TGroupBox]] | Beschrifteter Rahmen mit eigenen Auswahlknöpfen, ein- oder mehrspaltig | | [[lyx_-_programmiersprache:vega:controls:tshape|TShape]] | [[lyx_-_programmiersprache:vega:controls:tcontrol|TControl]] | Rechteck, Ellipse, Kreis, Quadrat, wahlweise gefüllt | | [[lyx_-_programmiersprache:vega:controls:tspeedbutton|TSpeedButton]] | [[lyx_-_programmiersprache:vega:controls:tcustombutton|TCustomButton]] | Flacher Knopf mit Bild, gruppierbar über ''GroupIndex'' | | [[lyx_-_programmiersprache:vega:controls:tstatictext|TStaticText]] | [[lyx_-_programmiersprache:vega:controls:tcontrol|TControl]] | Text mit Rahmen, wahlweise mit Fokusweitergabe an ein anderes Control | | [[lyx_-_programmiersprache:vega:controls:tupdown|TUpDown]] | [[lyx_-_programmiersprache:vega:controls:tcontrol|TControl]] | Pfeilpaar ohne Eingabefeld, wahlweise an ein [[lyx_-_programmiersprache:vega:controls:tedit|TEdit]] gebunden | ===== Aufzählungen ===== ^ Enum ^ Werte ^ Zweck ^ | ''TBevelShape'' | ''BVS_BOX'' (0), ''BVS_FRAME'' (1), ''BVS_TOP_LINE'' (2), ''BVS_BOTTOM_LINE'' (3), ''BVS_LEFT_LINE'' (4), ''BVS_RIGHT_LINE'' (5), ''BVS_SPACER'' (6) | Form einer ''TBevel'' | | ''TBitBtnKind'' | ''BK_CUSTOM'' (0), ''BK_OK'' (1), ''BK_CANCEL'' (2), ''BK_YES'' (3), ''BK_NO'' (4), ''BK_HELP'' (5), ''BK_CLOSE'' (6) | Standardrolle eines ''TBitBtn'' — bestimmt Beschriftung und ''ModalResult'' | | ''TBorderStyle'' | ''BS_NONE'' (0), ''BS_SINGLE'' (1), ''BS_LOWERED'' (2), ''BS_RAISED'' (3) | Rahmenart, auch von anderen Units benutzt | | ''TColumnLayout'' | ''CL_TOP_TO_BOTTOM'' (0), ''CL_LEFT_TO_RIGHT'' (1) | Füllrichtung einer mehrspaltigen ''TRadioGroup'' | | ''TShapeKind'' | ''SHP_RECTANGLE'' (0), ''SHP_ROUND_RECT'' (1), ''SHP_ELLIPSE'' (2), ''SHP_CIRCLE'' (3), ''SHP_SQUARE'' (4), ''SHP_ROUND_SQUARE'' (5) | Form einer ''TShape'' | ===== Konstanten ===== ^ Name ^ Typ ^ Wert ^ Bedeutung ^ | ''VEGA_CLB_MAX'' | [[lyx_-_programmiersprache:sprache:datentypen#1_ganzzahl-typen_signiert|int64]] | ''256'' | Höchstzahl der Einträge einer ''TCheckListBox'' | ===== Freie Funktionen ===== ^ Signatur ^ Zweck ^ | ''NewStaticText(caption: pchar): TStaticText'' | Erzeugt ein ''TStaticText'' mit dieser Beschriftung | | ''DrawBorder(canvas: TCanvas, r: TRect, style: int64, th: TTheme): void'' | Zeichnet einen Rahmen der angegebenen Art — von mehreren Controls gemeinsam benutzt | | ''NewBevel(shape: int64): TBevel'' | Erzeugt eine ''TBevel'' dieser Form | | ''NewShape(kind: int64): TShape'' | Erzeugt eine ''TShape'' dieser Art | | ''NewSpeedButton(caption: pchar): TSpeedButton'' | Erzeugt ein ''TSpeedButton'' mit dieser Beschriftung | | ''NewBitBtn(kind: int64): TBitBtn'' | Erzeugt ein ''TBitBtn'' in dieser Standardrolle | | ''NewGlyphButton(caption: pchar, glyphPath: pchar): TBitBtn'' | Erzeugt ein ''TBitBtn'' mit Beschriftung und Bild aus einer Datei | | ''NewRadioGroup(caption: pchar): TRadioGroup'' | Erzeugt eine ''TRadioGroup'' mit dieser Beschriftung | | ''NewCheckListBox(): TCheckListBox'' | Erzeugt eine leere ''TCheckListBox'' | | ''NewUpDown(): TUpDown'' | Erzeugt ein ''TUpDown'' | | ''NewPaintBox(): TPaintBox'' | Erzeugt eine ''TPaintBox'' | ---- ===== Zu beachten ===== * ''TSpeedButton'' und ''TBitBtn'' hängen beide an [[lyx_-_programmiersprache:vega:controls:tcustombutton|TCustomButton]] in [[lyx_-_programmiersprache:vega:units:stdctrls|Vega.StdCtrls]]. Alles zum Bild auf dem Knopf — ''Glyph'', ''NumGlyphs'', ''Layout'', ''Spacing'', ''Margin'' — steht dort und nicht hier. * Der Rahmen-Enum heißt ''BS_LOWERED'', nicht ''BS_SUNKEN''. [[lyx_-_programmiersprache:vega:controls:tpanel|TPanel]] benutzt ihn übrigens **nicht** — dort heißt die Eigenschaft ''Border'' und nimmt ''PB_*''-Werte. * ''TBevel'' und ''TShape'' nehmen keine Eingaben an: sie liegen unter der Maus, ohne sie abzufangen. * ''TUpDown'' schreibt in ein verbundenes Feld nur, wenn ''SetAssociate'' gerufen wurde; ohne Verbindung bleibt es ein reines Pfeilpaar mit ''Position''. * Eine ''TRadioGroup'' verwaltet ihre Auswahlknöpfe selbst — Einträge kommen über ''Items'', nicht als Kinder von Hand. ---- ===== Abhängigkeiten ===== **Importiert:** [[lyx_-_programmiersprache:vega:units:types|Vega.Types]], [[lyx_-_programmiersprache:vega:units:events|Vega.Events]], [[lyx_-_programmiersprache:vega:units:canvas|Vega.Canvas]], [[lyx_-_programmiersprache:vega:units:theme|Vega.Theme]], [[lyx_-_programmiersprache:vega:units:control|Vega.Control]], [[lyx_-_programmiersprache:vega:units:font|Vega.Font]], [[lyx_-_programmiersprache:vega:units:strings|Vega.Strings]], [[lyx_-_programmiersprache:vega:units:lists|Vega.Lists]], [[lyx_-_programmiersprache:vega:units:style|Vega.Style]], [[lyx_-_programmiersprache:vega:units:stdctrls|Vega.StdCtrls]], [[lyx_-_programmiersprache:vega:units:listctrls|Vega.ListCtrls]], [[lyx_-_programmiersprache:vega:units:picture|Vega.Picture]] **Wird importiert von:** [[lyx_-_programmiersprache:vega:units:colordlg|Vega.ColorDlg]], [[lyx_-_programmiersprache:vega:units:fontdlg|Vega.FontDlg]], [[lyx_-_programmiersprache:vega:units:images|Vega.Images]], [[lyx_-_programmiersprache:vega:units:layout|Vega.Layout]], [[lyx_-_programmiersprache:vega:units:lfmclasses|Vega.LfmClasses]], [[lyx_-_programmiersprache:vega:units:lfmload|Vega.LfmLoad]], [[lyx_-_programmiersprache:vega:units:lfmsave|Vega.LfmSave]], [[lyx_-_programmiersprache:vega:units:listview|Vega.ListView]], [[lyx_-_programmiersprache:vega:units:trees|Vega.Trees]] Letzte Aktualisierung: 2026-08-20 — Klassen, Aufzählungen, Konstanten und freie Funktionen maschinell aus ''Vega/Extras.lyx'' erhoben.