Einzelnen Beitrag anzeigen

EMS

Registriert seit: 19. Dez 2012
97 Beiträge
 
#11

AW: Record in Datei speichern

  Alt 19. Dez 2012, 13:44
So die Procedure geht jetzt da passte die end nicht ganz
So jetzt geht aber das nicht mit dem Button?
Ich hab das Gefühl das da eine Variable unter button1 fehlt?
Oder was mach ich jetzt wieder falsch?

Fehler sind:

unit1.pas(81,3) Error: Wrong number of parameters specified for call to "ZieleErfassen"
unit1.pas(49,11) Hint: Found declaration: ZieleErfassen(var TZielListe);
unit1.pas(85) Fatal: There were 1 errors compiling module, stopping

Delphi-Quellcode:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;

type

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

  TZiel = record
    Ort:String[20];
    Preis: real;
  end;


  TZielListe = record
    Ziele: array[1..100] of TZiel;
    ZielZahl: integer;
  end;

TZielFile = file of TZiel;


var
  Form1: TForm1;
  ZielListe: TZielListe;
  ZielFile: TZielFile;
  I: Integer;

implementation

{$R *.lfm}

{ TForm1 }

procedure ZieleErfassen(var Liste: TZielListe);
begin
     with Liste do
       begin
       Ziele[1].Ort:='Dresden';
       Ziele[1].Preis:=16.00;
       with Ziele[2] do
          begin
          Ort := 'Berlin';
          Preis := 43.00;
          end;
             with Ziele[3] do
             begin
             Ort :='Aachen';
             Preis := 155.00;
             end;
        ZielZahl :=3;
       end;

ZieleErfassen(ZielListe);
Assign(Zielfile, 'C:\Users\Desktop\adress.dat');
Rewrite(Zielfile);
   with ZielListe do
      for I := 1 to ZielZahl do
      begin
      write(ZielFile, Ziele[I]);
      Close(ZielFile);
      end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ZieleErfassen;
end;
end.
  Mit Zitat antworten Zitat