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

IHM Discussion :

evenements dans champ texte


Sujet :

IHM

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 12
    Points : 9
    Points
    9
    Par défaut evenements dans champ texte
    Voilà j'essaie de déclencher des évènements au fur et à mesure de la saisie de caractères dans une zone de texte.
    Je voudrais pouvoir exécuter du code VB à chaque nouveau caractère saisi, mais sans attendre la touche entrée ou la sortie du champ.

    Il y a plusieurs applications possibles :
    - afficher interactivement le nombre de lignes d'une table dont un champ commence par les lettres déjà saisies.
    - réaliser la "complétude automatique" de la saisie quand il n'y a plus qu'une seule possibilité.

    J'ai essayé "sur changement", "sur touche appuyée", "sur touche relachée", "sur touche activée" , "avant MAJ" ... sans succès pas de réaction pendant la saisie.
    Si je clique dans un autre champ un évèmement déclenche le clcul du nombre d'occurences, mais pas PENDANT la saisie.

    Merci pour vos bonnes idées ...

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 44
    Points : 49
    Points
    49
    Par défaut
    Bonjour
    L'évènement Sur changement fonctionne bien avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Texte0_Change()
    MsgBox "test"
    End Sub
    Fais le test dans un formulaire tout neuf, ça marche ?
    Attention au reste du code qui peut interférer, à mettre [procédure évènementielle] en mode création et à distinguer le "code qui ne se lance pas" du "code qui se lance et ne fait rien"

  3. #3
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 172
    Points
    12 172
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Non, Change ne marche pas puisque tant que le TextBox n'est pas validé, il est considéré comme NULL.
    De ce fait, KAZA51 ne pourra pas définir ce qu'il veut;
    Voilà un semblant de point de départ, à toi de peaufiner...

    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
    Option Compare Database
    Option Explicit
     
    Private Enum MyEvents
      ShowNBRows = 1
      AutoCompletion = 2
    End Enum
     
    Private m_strTextEntry As String
    Private m_NoErrors As Boolean
     
    Private Sub ExecuteEvent(ByVal KeyAscii As Integer, WhichEvent As MyEvents)
      m_strTextEntry = m_strTextEntry & Chr(KeyAscii)
      lblContent.Caption = m_strTextEntry
      Select Case WhichEvent
        Case ShowNBRows
          Call ShowNBRows (m_NoErrors)
        Case AutoCompletion
          Call AutoCompleteData (m_NoErrors)
      End Select
      If Not m_NoErrors Then
        MsgBox "Event ended successfully !", 64
      End If
    End Sub
     
    Private Sub Form_Load()
      Me!txtEntryData = ""
    End Sub
     
    Private Sub txtEntryData_KeyPress(KeyAscii As Integer)
      ExecuteEvent KeyAscii, AutoCompletion 
    End Sub
    Argy

  4. #4
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Citation Envoyé par argyronet
    Bonjour,

    Non, Change ne marche pas puisque tant que le TextBox n'est pas validé, il est considéré comme NULL.
    De ce fait, KAZA51 ne pourra pas définir ce qu'il veut;
    Voilà un semblant de point de départ, à toi de peaufiner...

    Argy
    Hello, je ne suis pas tout à fait d'accord avec toi Argy, car on peut récupérer la valeur du TextBox non pas avec .Value, mais avec .Text

    comme avec ce code-ci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub TxtBoxTest_Change()
     
    Debug.Print Now, Me.TxtBoxTest.Text
     
    End Sub

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    Merci , je vais essayer.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 44
    Points : 49
    Points
    49
    Par défaut
    Merci Cafeine !


  7. #7
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 172
    Points
    12 172
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par cafeine
    Hello, je ne suis pas tout à fait d'accord avec toi Argy, car on peut récupérer la valeur du TextBox non pas avec .Value, mais avec .Text
    Ah, ben j'ai appris un truc aujourdhui
    Quand on a de "bonnes" vieilles habitudes, on a tendance à les garder...

    Merci

    Argy

Discussions similaires

  1. [FLASH 8] Texte html dans champ texte dynamique
    Par bractar dans le forum Flash
    Réponses: 9
    Dernier message: 21/01/2007, 10h08
  2. Clique dans champ texte => sélection de radio
    Par Huntress dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 02/11/2005, 14h05
  3. affiche date du jour dans champ texte
    Par pascal.cargouet dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 12/01/2005, 11h04
  4. Utilisation de replace dans champs text
    Par cdelamarre dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 01/12/2004, 17h26
  5. Que privilégier : %like% dans champs texte, ou plain text ?
    Par Dimitri01 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 31/01/2004, 11h45

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