Der Farbdialog: Farbfeld mit Sättigung und Helligkeit, Farbtonleiste, Grundfarben und Zahlenfelder für Rot, Grün und Blau. Vorgabe und Ergebnis stehen beide in Color.
Unit: vega.colordlg · Basis: keine — eigene Wurzel
→ Alle Steuerelemente · Klassenbaum · Guide: Komponenten
Kette: TColorDialog — eigene Wurzel, kein Vorfahr. Was diese Klasse kann, steht vollständig auf dieser Seite.
Direkte Nachfahren: keine — diese Klasse wird nicht weiter abgeleitet.
Quelle: vega/colordlg.lyx
var d: TColorDialog := new TColorDialog();
d.SetTitle("Farbe waehlen");
d.SetColor(clSkyBlue);
if (d.Execute(app)) {
panel.SetColor(d.Color);
}
d.Destroy();
Kurzform, wenn nur die Farbe gebraucht wird:
var c: TColor := ChooseColor(app, panel.Color);
Hue, Sat, Val). Grund: in Schwarz und in Grau lässt er sich nicht aus der Farbe zurückrechnen — zöge man ihn jedes Mal aus Color, spränge der Zeiger in der Farbleiste auf Rot, sobald die Helligkeit auf 0 fällt.Color ist Vorgabe und Ergebnis in einem — wie in Delphi. Vor Execute setzen, danach lesen.SetColor die Felder für Rot, Grün und Blau nachträgt, ist deren OnChange stillgelegt; sonst rechnete der Dialog seine eigene Anzeige erneut in eine Farbe um und der Farbton ginge bei jedem Klick verloren.HsvToColor und ColorToHsv stehen als freie Funktionen bereit, ebenso BasicColorAt für die Grundfarbenpalette.Alle Eigenschaften, auch die geerbten.
| Name | Typ | Bedeutung | Herkunft |
|---|---|---|---|
Color | TColor | Vor dem Aufruf die Vorgabe, danach das Ergebnis — wie in Delphi | eigen |
Hue | int64 | Arbeitszustand während der Auswahl. Der Farbton wird getrennt gehalten, weil er in Schwarz und in Grau nicht aus der Farbe rekonstruierbar ist: zoege man ihn jedes Mal aus Color, … | eigen |
Sat | int64 | Sättigung des Arbeitsfarbtons | eigen |
Title | TTextBuffer | Titelzeile des Dialogs | eigen |
Val | int64 | Helligkeit des Arbeitsfarbtons | eigen |
Alle Methoden, auch die geerbten.
| Signatur | Zweck | Herkunft |
|---|---|---|
BasicIndexAt(x: int64, y: int64): int64 | Index der Rasterzelle unter dem Punkt, oder -1 daneben | eigen |
Create(): void | Anlegen; new TColorDialog() | eigen |
Destroy(): void | Gibt eigene Ressourcen frei | eigen |
Execute(app: TApplication): bool | Zeigt den Dialog modal; true = bestätigt | eigen |
HexText(): pchar | Farbe als Hex-Zeichenkette | eigen |
PickBasic(x: int64, y: int64): bool | Wählt eine Grundfarbe aus der Palette | eigen |
PickHue(y: int64): void | Setzt den Farbton aus der Leiste | eigen |
PickSatVal(x: int64, y: int64): void | Waagerecht die Saettigung, senkrecht die Helligkeit — oben hell | eigen |
SetColor(c: TColor): void | Farbe von aussen setzen. Der Farbton wird nur übernommen, wenn die Farbe überhaupt einen hat (S und V ungleich 0) — sonst bleibt der bisherige stehen | eigen |
SetHue(h: int64): void | Setzt Hue | eigen |
SetRgb(r: int64, g: int64, b: int64): void | Einzelne RGB-Komponente setzen, wie aus den Zahlenfeldern | eigen |
SetSatVal(s: int64, v: int64): void | Setzt Sättigung und Helligkeit aus dem Farbfeld | eigen |
SetTitle(s: pchar): void | Setzt Title | eigen |
Letzte Aktualisierung: 2026-09-05 — Seite neu angelegt; erhoben aus vega/colordlg.lyx im Repo lyx-vcl.