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

Windows Discussion :

Win 32 sasie semi-auto


Sujet :

Windows

  1. #1
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 81
    Points : 66
    Points
    66
    Par défaut Win 32 sasie semi-auto
    Voila j'essai de faire une fonction de saisie semi-automatique au tous mes mots possibles seraient stocké dans une combobox. L'ennui c'est que je suis débutant et que ma fonction ne marche pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    Void semiauto()
    {
    i = 0;
    //Récupération du mot saisie
    SendMessage(Macombo,WM_GETTEXT,sizeof saisie,(LPARAM) saisie);
    // on compte le nombre d'éléments présent dans la combo
    LRESULT Nbelement = SendMessage(Macombo,CB_GETCOUNT, ,0,0);
    // on cherche une correspondance entre le mot saisie et les mot de la combo
    LRESULT Trouve = SendMessage(Macombo,CB_FINDSTRING,-1,(LPARAM)saisie);
    
    //on ajoute tous les mots correspondant a la suite de la combo
    While (Trouve <= Nbelement && Touve != CB_ERR)
    {
        SendMessage(Macombo,WM_GETTEXT, sizeof Temp,(LPARAM) Temp);
        SendMessage(Macombo,CB_ADDSTRING,0,(LPARAM) Temp);
    //on cherche dans la combo un autre mot correspondant a notre saisie a partir de l'indice du dernier mot trouvé.
        Trouve = SendMessage(Macombo,CB_FINDSTRING,Trouve,(LPARAM)saisie);
    }
    
    // suppression des autre elements de la combo
    while(i<=Nbelement)
    {
        SendMessage(Macombo,CB_DELETSTRING,i,0);
    }
    // on remet le mot saisie par l'utilisateur
    SendMessage(Macombo,CB_SETEDITSEL,0, (LPARAM) edit);
    }
    
    Edit, saisie et temp sont déclaré plus haut dans ma fonction.
    
    Edit correspond a la zone de text de ma combo
    saisie le mot saisie par l'utilisateur
    Temp le mot trouvé a ajouter dan la liste
    
    Merci de votre aide pour avancer dans cette saisie semi-auto
    
    PS : Désolé si il y a d faute de syntaxe je n'ai pas fait un copier coller donc le probleme ne vient pas d'un point virgule ou autre erreur du style.

  2. #2
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 81
    Points : 66
    Points
    66
    Par défaut
    Par defaut la combobox permet de faire une saisie semi-auto, l'ennui maintenant c'est qu'il ne supprime pas les mots ayant aucune correspondance.

    Ainsi, si je tape le mot "ar" ma liste va afficher "arbre", "arriver" "azerty" puis "bateau" ...
    Je voudrais seulement voir les mots arbre et arriver, mais je ne sais pas comment filtrer cette liste.

  3. #3
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    81
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 81
    Points : 66
    Points
    66
    Par défaut
    Pour ceux que ça interesse il faut creer une fonction de filtre ( comparaison entre notre saisie et chaque éléments de la liste) afin de refaire une liste n'ayant que les mots coresspondant a notre recherche (cette fonction peut etre un peu lourde et longue avec une liste tres grande)

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

Discussions similaires

  1. Liste de validation générée à l'ouverture + saisie semi auto
    Par rogerlette dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 22/09/2010, 11h02
  2. liste déroulante semi auto sans saisie libre
    Par car0line dans le forum Excel
    Réponses: 4
    Dernier message: 27/04/2010, 16h56
  3. ComboBox Liste avec saisie semi auto en consultation
    Par phsouchal dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/08/2007, 12h35
  4. Win 2000 pro Redémarrage auto après démarrage
    Par snoop dans le forum Windows Serveur
    Réponses: 4
    Dernier message: 28/01/2007, 20h26
  5. Réponses: 1
    Dernier message: 27/10/2005, 22h48

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