Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.012 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#3

AW: RTTI records & SetValue

  Alt 6. Sep 2011, 14:44
Ich glaub du hast einen Bug in deinem Source. Denn du checkst den FieldType bevor du GetField machst?

In einem Beispiel funktioniert das wie erwartet:
Delphi-Quellcode:
type
  TMyRecord = record
    Value: Integer;
  end;

procedure TForm1.FormCreate(Sender: TObject);
var
  item: TMyRecord;
  field: TRttiField;
  t: TRttiType;
  c: TRttiContext;
begin
  t := c.GetType(TypeInfo(TMyRecord));
  field := t.GetField('Value');
  field.SetValue(@item, TValue.From(42));
  ShowMessage(IntToStr(item.Value));
end;
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat