Und wenn vorhanden, kann man das ganze mit
AnsiIndexText() (bzw.
AnsiIndexStr()) nochmal deutlich verkürzen:
Delphi-Quellcode:
function TForm1.GetColorScheme(const s: string): TColorScheme;
var
cs: TColorScheme;
lInt: integer;
begin
lInt := AnsiIndexText(s, ColorSchemeStrings);
if lInt > -1 then
result := TColorScheme(lInt)
else
raise EConvertError.CreateFmt('%s ist kein TColorScheme.', [s]);
end;