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

C++Builder Discussion :

problème AnsiString tableau pour c++ builder [Débutant]


Sujet :

C++Builder

Vue hybride

dekalima problème AnsiString tableau... 01/09/2010, 11h22
sat83 Pour manipuler des liste de... 01/09/2010, 11h32
dekalima Merci pour ta réponse, En... 01/09/2010, 12h01
sat83 Poste le bout de code complet... 01/09/2010, 12h31
dekalima En fait c'est bon, je me suis... 01/09/2010, 13h48
Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Par défaut problème AnsiString tableau pour c++ builder
    Bonjour, j'ai un gros problème assez urgent parce que j'en ai marre de trainer là dessus :


    Je souhaiterais créer un tableau d'AnsiString pour mettre par exemple "bonjour" dedant et je souhaiterais ensuite l'afficher dans une listbox


    voilà grosso modo ce que je pense mettre:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    AnsiString chaine[10];
    chaine[0]="bonjour";
     
    //mettre dans la listbox à la suite des autres choses déjà mises...
    ListBox1->Items->Add(chaine[0]);
    ça marche pas
    quelqu'un peut m'aider ?
    merci

    Je précise que la compilation marche mais rien ne s'affiche dans la listbox.

  2. #2
    Membre Expert
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Par défaut
    Pour manipuler des liste de chaine de caractère, je te conseille d'utiliser TStringList qui est justement fait pour ça (plutôt qu'un tableau de chaine):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    TStringList *strList = new TStringList();
    strList->Add( "Chaine0");
    strList->Add( "Chaine1");
    strList->Add( "Chaine2");
     
    //pour ajouter à ta ListBox:
    ListBox1->Items->Add( strList->Strings[1] ) ; //ajoute 'Chaine1'
     
    delete strList; // libération de la mémoire allouée
    Mais pour info, ton code fonctionne parfaitement (aussi bien à la compilation qu'a l'exécution), ton problème vient donc d'ailleurs:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
      AnsiString chaine[10];
      chaine[0] = "bonjour";
      ListBox1->Items->Add( chaine[0] );     
    }

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Par défaut
    Merci pour ta réponse,

    En fait j'ai mi mon code dans un autre projet c++builder avec simplement une listbox et un boutton et ça marche (le tien comme le mien)
    Je sais pas pourquoi mais il veut pas l'afficher dans mon projet déjà existant... je comprends pas
    Si je t'envoies mon projet par mail tu aurais le temps de jeter un coup d'oeil ? ça me serait grandement utile parce que là je vois pas...

    Sinon tu peux m'expliquer pourquoi avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    TStringList *strList = new TStringList();
    strList->Add( "Chaine0");
    strList->Add( "Chaine1");
    strList->Add( "Chaine2");
     
    //pour ajouter à ta ListBox:
    ListBox1->Items->Add( strList->Strings[1] ) ; //ajoute 'Chaine1'
     
    delete strList; // libération de la mémoire allouée
    c'est mieux que ma façon?

    thanks a lot mate !

  4. #4
    Membre Expert
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Par défaut
    Citation Envoyé par dekalima Voir le message
    Si je t'envoies mon projet par mail tu aurais le temps de jeter un coup d'oeil ? ça me serait grandement utile parce que là je vois pas...
    Poste le bout de code complet qui pose problème ici.

    Citation Envoyé par dekalima Voir le message
    Sinon tu peux m'expliquer pourquoi avec [...] c'est mieux que ma façon?
    !
    Les deux méthodes fonctionnent, il n'y en a pas l'une "mieux" que l'autre. C'est juste que la VCL propose un objet pour manipuler les chaines de caractères (TStringList) donc à titre personnel je préfère l'utiliser puisque je trouve beaucoup plus souple et pratique. Mais à chacun sa méthode.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Par défaut
    En fait c'est bon, je me suis débrouillé tout seul... en tout cas je te remercie pour le moment j'ai pas d'autres questions... je reviendrais vers toi si besoin est.

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    265
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 265
    Par défaut
    En fait si , j'ai une autre question, comment on fait pour vider la liste "strList" (sans la détruire)

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 20/10/2009, 10h05
  2. Réponses: 2
    Dernier message: 07/02/2008, 10h28
  3. Problème de tableau pour un exercice en C++
    Par tigresses57 dans le forum C++
    Réponses: 14
    Dernier message: 05/03/2006, 23h27
  4. Réponses: 3
    Dernier message: 11/01/2006, 17h44
  5. Problème tableau pour une requête
    Par LE NEINDRE dans le forum Langage
    Réponses: 2
    Dernier message: 07/10/2005, 20h21

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