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

Composants VCL Delphi Discussion :

alimanter une listbox a partir d'un tableau


Sujet :

Composants VCL Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 40
    Points
    40
    Par défaut alimanter une listbox a partir d'un tableau
    bonjour a tous, nouvel utilisateur de delphi je cherche a alimenter une listebox a partir du résultat d'un filtre sur un tableau. ca fait un petit moment que je planche dessus mais ca veut pas venir dinc si une ame genereurse pouvait me renseigner.merci d'avance.

  2. #2
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    tu fais une bougle sur chaque élément de tableau ( for..do..end ) et tu ajoutes à la ListBox avec ListBox.Items.Add

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 40
    Points
    40
    Par défaut
    merci pour la reponse, mais c le resultat du filtre que je cherche a ajouter a ma listbox et pas tout le tableau et je sais pas exactement coment fonctionne les filtres.merci

  4. #4
    Membre expert
    Avatar de TicTacToe
    Inscrit en
    Septembre 2005
    Messages
    1 940
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 940
    Points : 3 575
    Points
    3 575
    Par défaut
    Je crois qu'il faut préciser exactement les types que tu utilises, quel est ta source, quelle est ta dest (visiblement une TListBox)..., le filtre est fait au vol, ou s'agit-il d'un filtre intégré à une TTable par exemple ... ???
    Section Delphi
    La mine d'or: La FAQ, les Sources

    Un développement compliqué paraitra simple pour l'utilisateur, frustrant non ?
    Notre revanche ? l'inverse est aussi vrai ;-)

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 40
    Points
    40
    Par défaut
    pour etre precis, je créer un tableau de string. Puis dans un Edit je tape un mot ou un debut de mot et je voudrais que que dans ma listbox s'affichent les mots (compris dans le tableau) commencant par la chaine de caracteres que j'ai saisi dans mon Edit. c plus claire?

  6. #6
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    en supposant que ton objet TListBox se nomme ListBox1 et que tu es une déclaration comme celle-ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    var
     list : TStringList; //Liste des valeurs à trier
     search : string; //Chaine à rechercher
     i : integer;
    Tu aurais celà :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     for i:= 0 to list.Count -1 do
      begin
       if(Length(list[i]) >= Length(search)) then
        begin
     
          //Recherche sensible à la casse
          if(Copy(list[i],1,length(search)) = search) then
           listBox1.Items.Add(list[i]);
     
        end;
      end;

  7. #7
    Membre émérite Avatar de edam
    Homme Profil pro
    Développeur Delphi/c++/Omnis
    Inscrit en
    Décembre 2003
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Delphi/c++/Omnis
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 894
    Points : 2 771
    Points
    2 771
    Par défaut
    pourquoi pas en utilisant pos + ansiuppercase
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    procedure TForm1.edit1Change;
    var s:string;
    begin
    listBox1.clear;
    if length(edit1.text)=0 then exit;
    s:=ansiuppercase(edit1.text);
    for i:= 0 to list.Count -1 do 
      begin 
     
          if (pos(s,ansiuppercase(list[i])) >0) then 
           listBox1.Items.Add(list[i]); 
        end; 
    edn;
    pas tester
    PAS DE DESTIN, C'EST CE QUE NOUS FAISONS

  8. #8
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Citation Envoyé par wikimeta
    s'affichent les mots (compris dans le tableau) commencant par la chaine de caracteres
    donc je me suis pas occuppé de chercher la chaine autre part qu'au début mais en effet, pour ne pas que ce soit sensible à la casse, on peut faire ansiuppercase

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 57
    Points : 40
    Points
    40
    Par défaut
    un trés grand merci a tout les deux ca marche nickel.

  10. #10
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    hihi
    n'oublie pas le tag ( petit bouton en bas à gauche )

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

Discussions similaires

  1. A partir d'une listbox recuperer donnes d'un tableau excel
    Par gilou41 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/04/2011, 12h05
  2. affichage d'une courbe a partir d'un tableau de point
    Par topzozo dans le forum Tkinter
    Réponses: 2
    Dernier message: 30/05/2007, 12h19
  3. Creation d'une table à partir d'un tableau
    Par fafabzh6 dans le forum Access
    Réponses: 10
    Dernier message: 20/09/2006, 17h10
  4. [Conception] Construire une image à partir d'un tableau
    Par jacques_henry dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 07/02/2006, 14h53
  5. Réponses: 2
    Dernier message: 28/12/2005, 16h53

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