Thema: Delphi Advanced RTTI und Set's

Einzelnen Beitrag anzeigen

Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Advanced RTTI und Set's

  Alt 28. Feb 2018, 10:58
Gelöst:

Zuerst aus den gesetzten Teilen einen String im Format '[Wertname1,Wertname2]'.

Delphi-Quellcode:
function SetStrToValue(SetTypeName:string;value:string):TValue;
var
  ctx : TRttiContext;
  t : TRttiType;

begin
  t := ctx.FindType(SetTypeName);
  if (t <> NIL) then
    result := TValue.Make(StringToSet(t.handle,value),t.handle,result)
 else
   Raise Exception.create('Settype not found !');
end;
Wichtig dabei ist das TValue.Make, ansonsten wird nämlich der Typ von TValue auf tkInteger gesetzt und auch als Integer behandelt, statt als Set
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat