Avatar billede sinnet Nybegynder
18. august 2002 - 01:28 Der er 2 kommentarer og
1 løsning

Records & Arrays

type
  TUsers = record
    FirstName: string[15];
    LastName : string[25];
    Address  : string[35];
  end;

procedure TForm1.Button1Click(Sender: TObject);
var
  S: TStrings;
  I: Integer;
  Users: array of TUsers;
begin
  S := TStringList.Create;
  S.LoadFromFile('users.dat');

  for I := 0 to S.Count - 1 do
  begin
    Parser1.StringToParse := S[I];
    Users[I].FirstName := Parser1.Strings[0];
  end;
end;

---------------
Det går galt når jeg skal hælde data over i "Users" array'et...altså ved :

Users[I].FirstName := Parser1.Strings[0];

Jeg får en Access Violation...Hvis jeg hælder data over i en ComboBox, virker det fint ?!?
Hvad mangler jeg lige der ?
Avatar billede nico26 Nybegynder
18. august 2002 - 01:54 #1
du mangler at initialisere arrayet, da det er dynamisk

procedure TForm1.Button1Click(Sender: TObject);
var
  S: TStrings;
  I: Integer;
  Users: array of TUsers;
begin
  S := TStringList.Create;
  S.LoadFromFile('users.dat');

  SetLength(Users, S.Count);

  for I := 0 to S.Count - 1 do
  begin
    Parser1.StringToParse := S[I];
    Users[I].FirstName := Parser1.Strings[0];
  end;
end;
Avatar billede sinnet Nybegynder
18. august 2002 - 01:55 #2
hehe, tark !
Jeg fandt selv ud af det men du får sq dine point alligevel ;)
Avatar billede nico26 Nybegynder
18. august 2002 - 01:57 #3
tak :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester