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.