Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.508 Beiträge
 
Delphi 7 Professional
 
#11

AW: Gehen strings als Eigenschaftsnamen? Wenn ja wie?

  Alt 7. Okt 2018, 15:29
Wenn die Eigenschaften von LBotOptions genauso heißen, wie der Path in Ljtr, dann geht das:
Delphi-Quellcode:
  if (Ljtr.TokenType = TJsonToken.String) then begin
    SetStrProp(LBotOptions,Ljtr.Path,Ljtr.Value.ToString)
  end;
Beim letzten Beispiel von Dir haben wir aber (u. a.)
Delphi-Quellcode:

if (LowerCase(Ljtr.Path) = 'groupoptions.chatid') then LBotOptions.chatid:= Ljtr.Value.ToString;
Damit passen dann Path und Eigenschaftsname nicht mehr zueiander. Da müsste die Routine zur Zuweisung etwas "überarbeitet" werden:
Delphi-Quellcode:
if (Ljtr.TokenType = TJsonToken.String) then begin
  SetStrProp(LBotOptions,AnsiReplaceText(Ljtr.Path,'groupoptions.',''),Ljtr.Value.ToString);
end;
  Mit Zitat antworten Zitat