Hallo Niels,
wenn ich Dich richtig verstanden habe, möchtest Du etwas in der Art
bla:= StringToBenutzerdefinierterTyp('mtBla');
haben.
Das lässt sich zwar mit der
RTTI erreichen, dieser Bereich ist allerdings nur spärlich in der
OH oder den Handbüchern beschrieben ist. Deshalb hier etwas Source-Code:
Delphi-Quellcode:
uses
TypInfo;
type
TMyType = (mtFoo, mtBar);
function StringToMyType(const AString: String): TMyType;
begin
Result:= TMyType(GetEnumValue(TypeInfo(TMyType), AString));
end;
function MyTypeToString(const AValue: TMyType): string;
begin
Result:= GetEnumName(TypeInfo(TMyType), Integer(AValue));
end;
procedure TForm1.Button1Click(Sender: TObject);
var
myVar: TMyType;
begin
myVar:= StringToMyType('mtFoo');
Showmessage(MyTypeToString(myVar));
end;