Einzelnen Beitrag anzeigen

supermuckl

Registriert seit: 1. Feb 2003
1.340 Beiträge
 
FreePascal / Lazarus
 
#10

Re: Ini laden -> Programm stürzt ab

  Alt 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!
  Mit Zitat antworten Zitat