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.NET Discussion :

Pourquoi mon masquage ne fonctionne pas ? [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Par défaut Pourquoi mon masquage ne fonctionne pas ?
    Bonjour,
    dans une appli, j'ai 6 textbox que j'appelle
    A1;A2;B1;B2;C1;C2
    Chacune de ces 6 textbox affichent des valeurs comprises entre 0.00 et 6.00
    le postulat est le suivant :
    - Si A1 affiche la valeur 0.00 alors:
    A1 est visible et A2 est invisible
    sinon
    A1 est invisible et A2 visible

    pareil pour B1 et B2 ainsi que C1 et C2

    J'ai dabord mis les propriétés de mes 6 textbox a visible

    ensuite j'ai fait le plus simplement du monde ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    If valA1 = 0 then
    A1.Visible = true
    A2.Visible = false
    else
    A1.Visible = false
    A2.Visible = true
    end if
    de même pour B1; B2 et C1;C2
    Je teste et aucune cellule ne se masque alors que j'avais mis A1; B1 et C1 a "0.00"

    J'essaye ensuite betement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    If A1.text = "0.00" then
    A1.Visible = true
    A2.Visible = false
    else
    A1.Visible = false
    A2.Visible = true
    end if
    idem

    en desespoir de cause, je passe toutes les textbox a invisible

    idem

    voyez vous un problème ? parce que la je pédale ...

    Pour précision, j'ai bien toutes les valeurs correctement affichées dans les textbox

  2. #2
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2012
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 206
    Par défaut
    Salut,

    Tu es passé en debug avec des points d'arrêts pour regarder ce qu'il se passait sur tes tests ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2005
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2005
    Messages : 608
    Par défaut
    ben si je place un point d arrêt avant ma première boucle je vois bien mes valeurs affichées par contre rien ne se masque a l exécution de la boucle
    pas de masquage

  4. #4
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2012
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 206
    Par défaut
    Et tu n'as pas d'autre événement qui se déclenche après ta boucle ?
    Car la avec seulement ca comme code y a pas de raison que ça ne marche pas.

  5. #5
    Membre émérite

    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations forums :
    Inscription : Mars 2012
    Messages : 691
    Par défaut
    Bonjour

    es tu sur que tu essayes de masker après avoir inserer des valeurs dans tes
    textboxes ?
    mets un point d'arret à la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If A1.text = "0.00" then
    et mets in point d'arret à la ligne où tu assignes une valeur à A1.text
    lances ton app et verifie à quel break point il s'arrete

  6. #6
    Membre extrêmement actif
    Inscrit en
    Avril 2008
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Âge : 65

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 573
    Par défaut
    bonjour

    D'abord c'est une etrange logique,etant donne que ces textbox destinees la saisie par un user...
    On ne voit pas comment on peut activer la visibilite des textbox a1,b1,c1 une fois rendu invisibles...
    Ensuite qel serait le comportement si un des textbox contenait un "espace" ou nul(CR) ....
    code revu a affiner:
    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
     
    Imports System.Globalization
     
    Public Class frmA1A2
        Private Sub frmA1A2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
     
     
            A1.Clear()
            A2.Clear()
            B1.Clear() 'soit Espace ou bien l'autre cas egalement:String.Empty (l'user efface tout et valide par un CR)
            B2.Clear()
            C1.Clear()
            C2.Clear()
     
        End Sub
     
     
     
        Private Sub txtA1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles A1.TextChanged,
            B1.TextChanged, C1.TextChanged
            Dim ctl As TextBox = CType(sender, TextBox)
     
            Select Case ctl.Name
                Case "A1"
                    TestValeur(ctl)
                    A2.Visible = Not ctl.Visible
                Case "B1"
                    TestValeur(ctl)
                    B2.Visible = Not ctl.Visible
                Case "C1"
                    TestValeur(ctl)
                    C2.Visible = Not ctl.Visible
            End Select
     
        End Sub
        Private Sub TestValeur(ByVal ctl As TextBox)
            Dim valeur As Double = -Double.MaxValue
            If Double.TryParse(ctl.Text, NumberStyles.Number, CultureInfo.InvariantCulture, valeur) Then
                If valeur = 0.0 Then
                    ctl.Visible = True
                Else
                    ctl.Visible = False
                End If
            Else
                ctl.Visible = True
                ctl.Clear()
                ctl.Focus()
            End If
     
     
     
     
     
        End Sub
    End Class
    j'ai mis provider culture invariant pour utiliser le pave numerique...
    bon code...

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 23/08/2008, 12h34
  2. pourquoi mon code ne fonctionne pas
    Par jmlb35 dans le forum VBA Access
    Réponses: 2
    Dernier message: 30/06/2008, 20h02
  3. Pourquoi mon frame ne fonctionne pas sur Safari 3.0.4?
    Par joecool2005 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 05/02/2008, 18h36
  4. Réponses: 1
    Dernier message: 30/08/2006, 20h00
  5. [VB.Net/DataReader] Pourquoi mon ExecuteReader ne fonctionne pas ?
    Par emeraudes dans le forum Accès aux données
    Réponses: 8
    Dernier message: 21/08/2006, 14h38

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