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 :

Comment rendre inactif un bouton si un champ texte est vide?


Sujet :

IHM

  1. #1
    Membre régulier Avatar de Subkill
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    174
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 174
    Points : 124
    Points
    124
    Par défaut Comment rendre inactif un bouton si un champ texte est vide?
    Bonjour,

    je cherche à rendre inactif un bouton si l'utilisateur n'a rien rentré dans une zone de texte. Voiçi le code que j'ai écrit dans l'événement "Sur Changement" de la zone de texte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub txtAjout_Change()
     
    If txtAjout = "" Or IsNull(txtAjout) Then
     
        cmdAjouter.Enabled = False
     
    Else
     
       cmdAjouter.Enabled = True
     
    End If
    Mon problème est que la valeur de txtAjout est égale à Null même si je tappe du texte...

    J'ai essayé d'autres événement de la zone de texte sans succès...

  2. #2
    Membre éclairé Avatar de ft035580
    Profil pro
    Inscrit en
    Août 2004
    Messages
    689
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 689
    Points : 812
    Points
    812
    Par défaut
    Salut,

    Au lieu de rendre un contrôle inactif ,pourquoi ne pas dire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Bouton_Click()
    If IsNull(Me.txtAjout) Then
    MsgBox "Aucune saisie"
    Else
    ...
    End If
    End Sub

  3. #3
    Membre régulier Avatar de Subkill
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    174
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 174
    Points : 124
    Points
    124
    Par défaut
    J'y avais pensé, mais selon le dossier fonctionnel je dois ABSOLUEMENT le rendre inactif....ce n'est pas moi qui décide...malheureusement...

    Merci quand même

  4. #4
    Membre éclairé Avatar de ft035580
    Profil pro
    Inscrit en
    Août 2004
    Messages
    689
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 689
    Points : 812
    Points
    812
    Par défaut
    Citation Envoyé par Subkill
    mais selon le dossier fonctionnel
    Qu'entends tu par ceci ?

  5. #5
    Membre régulier Avatar de Subkill
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    174
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 174
    Points : 124
    Points
    124
    Par défaut
    Le dossier fonctionnel est un document qui indique le fonctionnement de l'application et qui doit être validé par le client avant de commencer la programmation...

  6. #6
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2006
    Messages
    1 399
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 399
    Points : 2 221
    Points
    2 221
    Par défaut
    bonjour,

    Regarder sinon du coté de la propriété <Text> de la zone de texte:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Me.cmdAjouter.Enabled = Len(Me.txtAjout.Text & "") <> 0
    cordialement,

    philippe

  7. #7
    Membre éclairé Avatar de ft035580
    Profil pro
    Inscrit en
    Août 2004
    Messages
    689
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 689
    Points : 812
    Points
    812
    Par défaut
    Citation Envoyé par Subkill
    Le dossier fonctionnel est un document qui indique le fonctionnement de l'application et qui doit être validé par le client avant de commencer la programmation
    Bon..........,

    Quelles sont tes tables , les formulaires "incriminés" etc ... .

    Pourrais tu poster un fragment de ton projet , car je ne comprends pas grand chose voire rien du tout ... .

    Désolé !!!!!!

  8. #8
    Membre émérite

    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 751
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 751
    Points : 2 368
    Points
    2 368
    Par défaut
    Bonsoir,
    Citation Envoyé par Subkill
    Mon problème est que la valeur de txtAjout est égale à Null même si je tappe du texte...
    C'est parce que tu ne "regardes" pas au bon endroit.

    Quand la valeur d'un contrôle TextBox est en cours de modification, le changement n'est pas encore répercuté dans la propriété Value.
    A la place, tu peux consulter (et modifier) la propriété Text qui te présente le texte en cours de saisie... tu saisis ? (humour )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub txtAjout_Change()
        If txtAjout.Text = "" Then
            cmdAjouter.Enabled = False
        Else
            cmdAjouter.Enabled = True
        End If
    [EDIT]
    Désolé, Philben était déjà passé par là.

    Au passage, Text retourne toujours un String, donc pas besoin de se protéger en concaténant une chaîne de caractères vide :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.cmdAjouter.Enabled = (Len(Me.txtAjout.Text) <> 0)
    [/EDIT]

  9. #9
    Membre éclairé Avatar de ft035580
    Profil pro
    Inscrit en
    Août 2004
    Messages
    689
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 689
    Points : 812
    Points
    812
    Par défaut
    Citation Envoyé par =JBO=
    Bonsoir,
    C'est parce que tu ne "regardes" pas au bon endroit.

    Quand la valeur d'un contrôle TextBox est en cours de modification, le changement n'est pas encore répercuté dans la propriété Value.
    A la place, tu peux consulter (et modifier) la propriété Text qui te présente le texte en cours de saisie... tu saisis ? (humour )
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub txtAjout_Change()
        If txtAjout.Text = "" Then
            cmdAjouter.Enabled = False
        Else
            cmdAjouter.Enabled = True
        End If
    [EDIT]Désolé, Philben était déjà passé par là. [/EDIT]
    Mes Félicitations JBO,

    Si c'est çà , J'étais à cent milles lieux.

    Tant mieux pour Subkill

  10. #10
    Membre régulier Avatar de Subkill
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    174
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 174
    Points : 124
    Points
    124
    Par défaut
    Yahoo ca fonctionne!

    Merci bcp!

  11. #11
    Membre émérite

    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 751
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 751
    Points : 2 368
    Points
    2 368
    Par défaut
    Citation Envoyé par Subkill
    Yahoo ca fonctionne!

    Merci bcp!
    Et Google ? Ça fonctionne ?

  12. #12
    Membre régulier Avatar de Subkill
    Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    174
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2006
    Messages : 174
    Points : 124
    Points
    124
    Par défaut
    Oufff ca ma pris un bon 10 sec à compendre, mais je l'ai tout de même rit!

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

Discussions similaires

  1. Controler si un champ TEXT est vide ou pas
    Par yawra dans le forum Général JavaScript
    Réponses: 35
    Dernier message: 08/04/2012, 00h05
  2. [PB 6.5] Rendre inactif un bouton
    Par sandF dans le forum Powerbuilder
    Réponses: 4
    Dernier message: 27/08/2007, 16h33
  3. Rendre Inactif Un Bouton
    Par thelvyn2001 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 17/07/2007, 20h08
  4. [FLASH MX2004] Rendre inactif un bouton
    Par j0hnmerrick dans le forum Flash
    Réponses: 2
    Dernier message: 22/02/2005, 10h51
  5. comment rendre inoperant le bouton precedente ?
    Par trialrofr dans le forum ASP
    Réponses: 7
    Dernier message: 30/01/2005, 17h06

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