Vega.ColorCtrls — Farbauswahl als Liste

TColorBox und TColorListBox zeigen dieselbe Sache in zwei Formen: eine Zeile je Farbe, links ein Feld in der Farbe, daneben ihr Name. Deshalb steht die Farbtabelle hier einmal und nicht in jeder Klasse. Namen und Bedeutung der cb*-Bits sind aus Delphi/LCL übernommen.

Quelldatei: Vega/ColorCtrls.lyx

Alle Units · Alle Steuerelemente · Vega VCL


Klassen

Klasse Basis Zweck
TColorBox TComboBox Eingeklappte Farbauswahl (auf Grundlage von TComboBox)
TColorListBox TListBox Aufgeklappte Farbauswahl (auf Grundlage von TListBox)

Typaliase

Name Ist Zweck
TGetColorsEvent fn(sender: TControl, names: TStringList, colors: TIntArray, count: int64): int64 Handler, um die angebotene Liste selbst zusammenzustellen

Konstanten

Name Typ Wert Bedeutung
cbStandardColors int64 1 Auswahl: Standardfarben
cbExtendedColors int64 2 Auswahl: erweiterte Farben
cbSystemColors int64 4 Auswahl: Systemfarben
cbIncludeNone int64 8 Auswahl: Eintrag „keine“ mitzeigen
cbIncludeDefault int64 16 Auswahl: Eintrag „Vorgabe“ mitzeigen
cbCustomColor int64 32 Auswahl: Eintrag für eine eigene Farbe
cbPrettyNames int64 64 Namen mit Leerzeichen statt in Pascal-Schreibweise (Money Green statt clMoneyGreen)
VEGA_COLORBOX_DEFAULT_STYLE int64 cbStandardColors | cbExtendedColors | cbPrettyNames Voreingestellte Zusammenstellung
clNone TColor 0 - 2 Farbe: keine
clDefault TColor 0 - 3 Farbe: Vorgabe

Freie Funktionen

Signatur Zweck
StandardColorCount(): int64 Anzahl der Standardfarben
StandardColorAt(i: int64): TColor Standardfarbe an dieser Stelle
StandardColorName(i: int64, pretty: bool): pchar Name einer Standardfarbe
ExtendedColorCount(): int64 Anzahl der erweiterten Farben
ExtendedColorAt(i: int64): TColor Erweiterte Farbe an dieser Stelle
ExtendedColorName(i: int64, pretty: bool): pchar Name einer erweiterten Farbe
SystemColorCount(): int64 Anzahl der Systemfarben
SystemColorAt(i: int64, th: TTheme): TColor Systemfarbe an dieser Stelle
SystemColorName(i: int64, pretty: bool): pchar Name einer Systemfarbe
BuildColorList(style: int64, names: TStringList, colors: TIntArray, th: TTheme): int64 Stellt die Liste nach den cb*-Bits zusammen
ColorListCapacity(style: int64): int64 Wie viele Einträge dabei höchstens entstehen
DrawColorSwatch(canvas: TCanvas, r: TRect, col: TColor, border: TColor): void Zeichnet das Farbfeld einer Zeile
NewColorBox(): TColorBox Erzeugt eine eingeklappte Farbauswahl
NewColorListBox(): TColorListBox Erzeugt eine aufgeklappte Farbauswahl
ColorToHexText(c: TColor, dst: TTextBuffer): void Schreibt eine Farbe als #RRGGBB in einen Textpuffer
ParseHexColor(s: pchar): TColor Liest #RRGGBB aus Text; unlesbares liefert keine Farbe

Zu beachten

  • Die gewählte Farbe liest man über Selected, nicht über ItemIndex — das ist der Punkt der Klassen.
  • Einen eigenen Farbdialog daranzuhängen gibt es nicht: Vegas Dialog braucht die TApplication, deshalb nimmt PickCustomColor sie als Parameter.
  • Gezeichnet wird immer über DrawItem — einen Umschalter fürs Selberzeichnen wie Delphis lbOwnerDrawFixed braucht Vega nicht.

Abhängigkeiten

Importiert: Vega.Types, Vega.Events, Vega.Canvas, Vega.Theme, Vega.Control, Vega.Font, Vega.Strings, Vega.Lists, Vega.Style, Vega.ListCtrls

Wird importiert von: Vega.EditBtn

Letzte Aktualisierung: 2026-08-20 — Klassen, Aufzählungen, Konstanten und freie Funktionen maschinell aus Vega/ColorCtrls.lyx erhoben.