Registriert seit: 1. Feb 2003
1.340 Beiträge
FreePascal / Lazarus
|
Re: Ini laden -> Programm stürzt ab
2. Okt 2004, 15:16
monster := Tfigur.create;
fehlt
und du solltest einfach with Monster do weglassen weil innerhalb einer procedure die du in einer klasse hast können die klassenvariablen ohne blabla.variablenname angesprochen werden (sind ja in der gleichen klasse -> logischerweise direkt ansprechbar )
Delphi-Quellcode:
type
TFigur = class
procedure LoadStats;
private
// Genral stats
Name_: String;
Typ: String;
Alter: String;
Sex: String;
Groesse: String;
Gewicht: String;
Level: String;
// Feeling
Hunger: String;
Durst: String;
Happy: String;
Muedigkeit: String;
Harndrang: String;
Gesundheit: String;
Disziplin: String;
public
end;
var
MainFrm: TMainFrm;
Monster: TFigur;
...
procedure TFigur.LoadStats;
var Ini: TIniFile;
begin
try
Ini := TIniFile.Create(ExtractFilePath(Application.Exename) + 'stats.ini');
Name_ := Ini.ReadString('Settings', 'Name', '');
Typ := Ini.ReadString('Settings', 'Typ', '');
Alter := Ini.ReadString('Settings', 'Alter', '');
Sex := Ini.ReadString('Settings', 'Sex', '');
Groesse := Ini.ReadString('Settings', 'Groesse', '');
Gewicht := Ini.ReadString('Settings', 'Gewicht', '');
Level := Ini.ReadString('Settings', 'Level', '');
Hunger := Ini.ReadString('Settings', 'Hunger', '');
Durst := Ini.ReadString('Settings', 'Durst', '');
Happy := Ini.ReadString('Settings', 'Happy', '');
Muedigkeit := Ini.ReadString('Settings', 'Muedigkeit', '');
Harndrang := Ini.ReadString('Settings', 'Harndrang', '');
Gesundheit := Ini.ReadString('Settings', 'Gesundheit', '');
Disziplin := Ini.ReadString('Settings', 'Disziplin', '');
finally
Ini.Free;
end;
end;
procedure TMainFrm.Button1Click(Sender: TObject);
begin
monster := Tfigur.create;
Monster.LoadStats;
end;
und irgendwann auch mal wieder monster.free falls du mehrere hast und eins stirbt mal oderso
Das echte Leben ist was für Leute...
... die im Internet keine Freunde finden!
|
|
Zitat
|