EReadError Invalid value for property

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
malabarista
Beiträge: 321
Registriert: Sa 11. Jun 2016, 12:16
OS, Lazarus, FPC: Linux Mint 18.1 L1.6.2-1 FPC 3.0.0
CPU-Target: 64Bit
Wohnort: Konstanz

EReadError Invalid value for property

Beitrag von malabarista »

Nachdem ich aufgrund von Compilerhinweisen eine ganze Menge Variablen, die nicht benutzt würden, entfernt habe,
bekomme ich jetzt in meinem ersten Form einen
EReadError Invalid value for property
Bei Adresse 80C6278

Die Anzeige öffnet den control.inc und steht in
procedure TControl.ReadState(Reader: TReader);
auf Zeile 3668

Code: Alles auswählen

 
procedure TControl.ReadState(Reader: TReader);
begin
  Include(FControlFlags, cfLoading);
  DisableAutoSizing{$IFDEF DebugDisableAutoSizing}('TControl.ReadState'){$ENDIF};
  try
    Include(FControlState, csReadingState);
    inherited ReadState(Reader);    //<--- diese Zeile
  finally
    Exclude(FControlState, csReadingState);
    EnableAutoSizing{$IFDEF DebugDisableAutoSizing}('TControl.ReadState'){$ENDIF};
  end;
end;
 


Wie kann ich herausfinden, bei welchem Element/Variable dieser Fehler auftritt ?

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: EReadError Invalid value for property

Beitrag von Michl »

So eine Fehlermeldung erhält man zum Beispiel, wenn man einen ungültigen Eintrag in der .lfm hat. Du kannst dir mit <Ctrl> + <Alt> + <S> den Aufrufstack anzeigen lassen. Damit weißt du zumindest bei welchem Formular der Fehler aufgetreten ist. Am einfachsten ist es wohl, einfach eine Schritt zurück in der Versionsverwaltung zu machen und nochmal vorsichtiger die angezeigten Einträge zu löschen.

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

JuStIn
Beiträge: 1
Registriert: Do 6. Jul 2017, 11:10

Re: EReadError Invalid value for property

Beitrag von JuStIn »

Ich habe die glecihe fehlermeldung und die ist bei mir aufgetreten als ich das hier geschrieben habe

procedure TForm1.Button1Click(Sender: TObject);
begin

panel1.color:=clRed;
Edit1.Text:='rot';

Michl
Beiträge: 2505
Registriert: Di 19. Jun 2012, 12:54

Re: EReadError Invalid value for property

Beitrag von Michl »

JuStIn hat geschrieben:Ich habe die glecihe fehlermeldung und die ist bei mir aufgetreten als ich das hier geschrieben habe
Ich denke daran liegt es nicht. Ich vermute du hast dir die unit1.lfm vermurkst. Sowas passiert, wenn man im Quelltexteditor Namen von Komponenten ändert, diese dort löscht usw. Properties sollten per Objektinspektor geändert werden.

Hänge doch mal das Projekt gezippt an (nur *.lpi, *.lfm, *.pas, *.lpr), dann kann man dir mehr sagen.

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection; 

Antworten