Einzelnen Beitrag anzeigen

Black sheep

Registriert seit: 18. Dez 2010
9 Beiträge
 
#17

AW: Facharbeit Minigame-Editor- Ladenproblem

  Alt 31. Jan 2011, 22:22
erstmal sorry, iwie hab ich keine mails mehr bekommen, obwohl hier noch welche geposted haben, und dooferweise hab ich die zweite seite nicht gesehen...^^

hab nach nochmaligem unterhalten mit meinem lehrer die speicher procedure so erledigt:
Delphi-Quellcode:
procedure TForm1.Speichern;

var i: integer;
    Datensatz : Datentyp;

begin
 if SaveDialog.Execute then
  begin
   LeftLeft; //unwichtige nebenprocedure
   assignfile(Datei, SaveDialog.FileName);
   rewrite(Datei);
   for i := 1 to Max do
   begin
    Datensatz := DatWelt(Welt[i]); //siehe nächstem code
    write(Datei,Datensatz);
   end;
   closefile(Datei);
   BtStart.Visible := true;
  end;
end;
Delphi-Quellcode:
function DatWelt(pObjekt: TObjekt): Datentyp;

begin
 result.Typ := pObjekt.Typ;
 result.Nummer := pObjekt.Nummer;
 result.StartX := pObjekt.StartX;
 result.StartY := pObjekt.StartY;
end;
und die laden procedure dementsprechend so:

Delphi-Quellcode:
procedure TForm1.Laden1Click(Sender: TObject);

var i: integer;
    Datensatz : Datentyp;

begin
 if MessageDlg('Wollen sie vorher speichern?', mtConfirmation,
        [mbYes, mbNo], 0) = mrYes
 then Speichern;
 if OpenDialog.Execute then
  begin
   assignfile(Datei, OpenDialog.FileName);
   reset(Datei);
   i := 0;
   NummerAktuell := 0;
   while not eof(Datei) do
    begin
     i := i+1;
     NummerAktuell := NummerAktuell+1;
     read(Datei, Datensatz);
     Welt[i].reset(Datensatz.Typ, Datensatz.Nummer,
                        Datensatz.StartX, Datensatz.StartY);
    end;
   closefile(Datei);
   Raster.Render;
   BtStart.Visible := true;
  end;
end;
somit werden jetzt genau die richtigen daten gespeichert und geladen.
denn was ich nicht wusste war, dass ich vorher sozusagen versucht habe, die kompletten objekte zu speichern und das ging ja, wie schon von blup geschrieben, deutlich schwieriger...

danke trotzdem nochmal an alle und sorry für meine unbeholfenheit...

Geändert von Black sheep (31. Jan 2011 um 22:24 Uhr)
  Mit Zitat antworten Zitat