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

VB 6 et antérieur Discussion :

[VB6] Bug d'affichage liste déroulante


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 13
    Par défaut [VB6] Bug d'affichage liste déroulante
    Bonjour,

    Vous trouverez ici :
    http://cjoint.com/?fDlCUZieTq

    Une illustration de mon problème qui est plus facile à expliquer avec une illustration.

    Voici le contexte :
    En VB6, je remplis une liste déroulante avec les infos d'une base.
    Je joue ensuite sur l'évenement keypress de ma liste déroulante (celle du haut sur la capture d'écran), et lorsque je saisi un code postal partiel ou entier, je rafraichi ma liste pour n'afficher que les lignes correspondantà ce code postal.

    Si je réalise l'opération avec la liste déroulante "fermée", c'est à dire non déroulée.
    Aucunb probleme.

    Cependant, si je le fais avec la liste déroulante ouverte,(elle compte initialement 5000 lignes), lorsque le filtre atteint un niveau de précision pour ne laisser apparaitre que 2 ou 3 lignes, (moins que les 7 lignes qui apparaissent par défaut), le cadee la liste déroulante reste affiché, et perturbe mon écran de saisie (voir sur le screen shot joint).

    J'ai tenté de rafraichir la fenetre, ma liste,etc.
    Mais rien n'y fait.
    Sauriez vous m'indiquer une methode pour faire cesser ce bug ?

    D'avance merci de votre aide.

    Salutations.

  2. #2
    Expert confirmé
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Par défaut
    mets-nous voir, à tout hasard le code de ton evenement keypress

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 13
    Par défaut
    Bonsoir,
    Voici le code du keypress.
    Il se contente d'appeller une fonction qui charge la liste en lui passant en parametre ce qui a été frappé..
    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
    Private Sub lstCliniques_KeyPress(KeyAscii As Integer)
            rechClinique = rechClinique & Chr(KeyAscii)
            loadComboCliniques rechClinique
    end sub
     
    Public Sub loadComboCliniques(Optional ByVal filtre As String)
     
        Dim i As Integer
        Dim requete As String
     
        requete = "SELECT * FROM cliniques"
        If filtre <> "" Then
            requete = requete & " AND cp_clinique like '" & filtre & "%'"
        End If
     
        garnirCombobox requete, ConnectionString, lstCliniques, "lstClin", "no_clinique"
     
    End Sub
    Une idée ?
    Merci d'avance.

  4. #4
    Membre Expert
    Avatar de méphistopheles
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    1 551
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 1 551
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub lstCliniques_KeyPress(KeyAscii As Integer)
            rechClinique = rechClinique & Chr(KeyAscii)
            loadComboCliniques rechClinique
    end sub
    c'est quoi rechClinique?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    loadComboCliniques rechClinique
    si tu te contente de la loader, elle ne sera pas visible.

    sinon, vérifie tes Zorder.

  5. #5
    Expert confirmé
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    requete = "SELECT * FROM cliniques"
        If filtre <> "" Then
            requete = requete & " WHERE cp_clinique like '" & filtre & "%'"
        End If

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 13
    Par défaut
    Citation Envoyé par ThierryAIM
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    requete = "SELECT * FROM cliniques"
        If filtre <> "" Then
            requete = requete & " WHERE cp_clinique like '" & filtre & "%'"
        End If
    Le WHERE a disparu suite à un copier coller malencontreux, mais il est présent dans la requete.
    Je n'ai d'ailleurs aucunb probleme avec la requete qui marche trés bien j'ai juste un bug d'affichage de la combo lorsque le nombre d'elements passe de X (X >7) à un nombre inférieur à 7 (qui est le nombre de ligne affichées lorsque je déroule ma combo)

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 13
    Par défaut
    Citation Envoyé par méphistopheles
    c'est quoi rechClinique?

    si tu te contente de la loader, elle ne sera pas visible.

    sinon, vérifie tes Zorder.
    rechclinique est une variable qui contient le texte à utiliser pour filtrer la requete et donc l'affichage

Discussions similaires

  1. affichage liste déroulante dans formulaire
    Par emmablue dans le forum Access
    Réponses: 1
    Dernier message: 25/07/2007, 18h00
  2. [AJAX] Lier une liste déroulant à un champ texte
    Par arnaudperfect dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 13/04/2007, 14h50
  3. [debutante] affichage liste déroulante
    Par marie4449 dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 27/03/2007, 13h35
  4. [PHP-JS] affichage liste déroulante
    Par marie4449 dans le forum Langage
    Réponses: 8
    Dernier message: 23/03/2007, 17h57
  5. Problème fonction affichage listes déroulantes
    Par JLDR69 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/09/2006, 19h06

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