Pb TStringList

Résolu
tony_73 Messages postés 30 Date d'inscription jeudi 29 septembre 2005 Statut Membre Dernière intervention 23 décembre 2011 - 24 août 2006 à 14:31
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 - 24 août 2006 à 15:26
Bonjour,

Voila j'ai un message d'erreur "...indice de listes hors limites(1)...

voici mon code ou j'ai l'erreur : 

 procedure TForm1.ButtonGenererClick(Sender: TObject);
var
   Etoile1,Etoile2 : string;
   Nombre            : TStringList;
   i                        : integer;
begin
  Nombre := TStringList.Create;



  Randomize;



  for i : = 1 to 5 do
  begin
    Nombre[i] := IntToStr(round(random(49) + 1));
  end;

Pouvez m'aider car je ne vois pas pourquoi je dépasse mon tableau.

Merci d'avance.

6 réponses

cs_Loda Messages postés 814 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 30 juillet 2009 3
24 août 2006 à 14:41
tu le pourra,

mais c'est

Nombre[0],
Nombre[1],
...,
Nombre[4].
3
jace1975 Messages postés 81 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 12 octobre 2007 1
24 août 2006 à 14:36
ben tout simplement essaye :

  for i := 1 to 5 do
  begin
    Nombre.add(IntToStr(round(random(49) + 1)));
  end;
attention une list commence toujours à 0 et fini donc count-1

tschusss
0
cs_Loda Messages postés 814 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 30 juillet 2009 3
24 août 2006 à 14:37
salut,

quand tu crée un TStringList, il est vide!

et tu ne peux changer que les valeurs qui existe deja.

donc, pour ajouter des valeur utilise

Nombre.Add( 'test');


apres tu peux relire tes strings avec

for i := 0 to Nombre.Count-1 do
begin
showmessage(Nombre[i]);
end;

voilà.

Bon code,

PS: n'oublie pas que tout ce que tu crée avec Xxx.Create doit être détruit avec Xxx.Free quand tu n'en a plus besoin. (fin de la procedure, FormDestroy, ...)
0
tony_73 Messages postés 30 Date d'inscription jeudi 29 septembre 2005 Statut Membre Dernière intervention 23 décembre 2011
24 août 2006 à 14:39
Oui j'y avais pensé mais je voudrais affecter 5 valeurs dans mon tableau de facon à ce que je puisse rapeler :
Nombre[1],
Nombre[2],
... 
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tony_73 Messages postés 30 Date d'inscription jeudi 29 septembre 2005 Statut Membre Dernière intervention 23 décembre 2011
24 août 2006 à 14:47
merci à toi. Tout marche comme je le voulais.


A +.


Tony
0
japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
24 août 2006 à 15:26
Et si tu gagnes au LOTO avec ton programme, ne nous oublie pas...


Merci d'avance (lol) 
0
Rejoignez-nous