IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

Comment utiliser un array of Tstrings


Sujet :

Delphi

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 116
    Points : 112
    Points
    112
    Par défaut Comment utiliser un array of Tstrings
    Bonjour,

    j'ai un problème pour utiliser un tableau de Tstrings.

    Je déclare le Tableau comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Reponses:         array of TStrings;
    Je fixe dynamiquement la taille du tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SetLength(Reponses, (CurrentQuizzNbQuestions - 1));
    Ensuite j'affecte un TStrings au premier element de mon tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    // Ce code est dans une boucle for, I vaut 1 au demarrage
    // TempReponses est bien un TStrings correctement instancié et rempli
     
    Reponses[I-1] := TStrings(TempReponses);
    et là ca crash : EAccessViolation et Cie...

    J'ai aussi essayé ca sans grande conviction :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    // Ce code est dans une boucle for, I vaut 1 au demarrage
    // TempReponses est bien un TStrings correctement instancié et rempli
    Reponses[I-1] := TStringList.Create; 
    Reponses[I-1] := TStrings(TempReponses);
    Est-ce qu'un delphien pourrait expliquer comment manipuler un tableau de Tstrings à un noob comme moi ?

    Merci à vous,


    Fred

  2. #2
    Membre éclairé Avatar de slimjoe
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2005
    Messages : 647
    Points : 789
    Points
    789
    Par défaut
    Qu'est-ce que ce code affiche comme message si tu l'insères juste avant le bout qui soulève l'exception ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Showmessage(IntToStr(High(Reponses)) 
      + #13 + IntToStr(I)
      + #13 + BoolToStr(Assigned(TempReponses)) 
      + #13 + BoolToStr(TempReponses is TStrings));

  3. #3
    Membre éclairé Avatar de slimjoe
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Canada

    Informations forums :
    Inscription : Juin 2005
    Messages : 647
    Points : 789
    Points
    789
    Par défaut
    Citation Envoyé par fred64
    Je fixe dynamiquement la taille du tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SetLength(Reponses, (CurrentQuizzNbQuestions - 1));
    Que contient CurrentQuizzNbQuestions ? Pourquoi le - 1 ? Attention! SetLength attend la longueur du tableau et non pas la borne supérieure (comme le Redim de VB par exemple).


  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 116
    Points : 112
    Points
    112
    Par défaut
    Merci à toi, tes messages m'ont eclairé et effectivement, j'avais un problème avec le -1, le problème etait surtout que je n'avais jamais manipulé de tableaux de Tstrings et j'ai focalisé là dessus plutot que bien vérifier les 'index' des tableaux.

    Merci beaucoup

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment utiliser <> avec array sur autofilter
    Par Nono Sto dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 23/10/2013, 11h14
  2. Réponses: 3
    Dernier message: 20/12/2006, 17h13
  3. Comment utiliser un array of TImage ?
    Par poussinphp dans le forum Langage
    Réponses: 23
    Dernier message: 19/09/2005, 09h24
  4. Réponses: 5
    Dernier message: 11/06/2002, 15h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo