Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Klassenaufruf führt zum Absturz (https://www.delphipraxis.net/122269-klassenaufruf-fuehrt-zum-absturz.html)

phate2613 12. Okt 2008 20:50


Klassenaufruf führt zum Absturz
 
Hallo,
ich habe in meinem Hauptprogramm eine Klasse definiert (type settings=class ...), welche ich im Hauptprogramm auch wunderbar aufrufen kann. Nun habe ich aber ein zweites Form und will die Klasse fort auch aufrufen, aber das Programm stürzt nur mit einer Zugriffsverletzung ab. Wer weiß weiter?

MfG Phate

mkinzler 12. Okt 2008 20:51

Re: Klassenaufruf führt zum Absturz
 
Zeig mal den genauen Code

phate2613 12. Okt 2008 20:53

Re: Klassenaufruf führt zum Absturz
 
Im Hauptprogramm definiert:

type
TSettings = class
private
FSettingsDatei: File of Einstellung;
FProfilname: String;
FVokabelAnzahl: Integer;
FBibliothekspfad: String;
procedure SetzeProfilName(Eingabe: String);
public
constructor Create;
property Profilname: string read FProfilname write SetzeProfilName;
property VokabelAnzahl: Integer read FVokabelAnzahl;
procedure EinstellungenAendern(Pname, Bpfad: String; Vanzahl: Integer);
end;


Und aufgerufen wir aus einem zweiten Fenster:

procedure TFensterEinstellungen.FormShow(Sender: TObject);
begin
Settings.Create; hier stürzt er ab
AnzahlVokabelnEdit.Text := IntToStr(Settings.VokabelAnzahl);
end;

mkinzler 12. Okt 2008 20:54

Re: Klassenaufruf führt zum Absturz
 
Delphi-Quellcode:
Settings := TSettings.Create;

Dunkel 12. Okt 2008 20:55

Re: Klassenaufruf führt zum Absturz
 
Hallo!

Ein Konstruktor gibt eine Klasseninstanz zurück, diese musst Du benutzen. In etwa so:

Delphi-Quellcode:
procedure TFensterEinstellungen.FormShow(Sender: TObject);
var
  mySetting: TSettings;
begin
  mySettings := TSettings.Create; hier stürzt er ab
  AnzahlVokabelnEdit.Text := IntToStr(mySettings.VokabelAnzahl);
  mySettings.Free();
end;

phate2613 12. Okt 2008 20:58

Re: Klassenaufruf führt zum Absturz
 
danke für die schnelle antwort.
manchmal scheitert man doch an den einfachsten dingen :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:54 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz