Hallo Delphi Programmierer,
ich wollte mal anfangen Klassen und Objekte zu verwenden um alles übersichtlicher zu machen und hab mir mal eine kleine Klasse erzeugt:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| TLast = class private FWindsog:single; Fwinddruck:single; FSchneelast:single; FEigengewicht:single; public Procedure SetWindsog(Sogkraft:single); property Windsog: single read FWindsog write SetWindsog;
end; |
Diese Steht direkt unter der Deklaration von TMainForm.
Im Implementation Teil steht das die Prozedur TLast.Setwindsog
Delphi-Quelltext
1: 2: 3: 4:
| Procedure TLast.SetWindsog(Sogkraft:single); begin FWindsog:=Sogkraft; end; |
Dann hab ich mir einen Button gemacht:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| procedure TMainForm.Button5Click(Sender: TObject); var BereichF:Tlast; begin BereichF.Create; BereichF.SetWindsog(40); showmessage(Floattostr(BereichF.FWindsog));
BereichF.Free; end; |
Wenn ich allerdings darauf klicke und dann mein Showmessage Dialog wegklicke erhalte ich Zugriffsverletzungen als Fehler.
Wenn ich "Free" weglasse funktioniert alles bis zum schließen den Programms, dann kommt wider die Zugriffsverletzung.
Wo liegt denn der Anfängerfehler?