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 :

Modification combobox.text incomprenable [Débutant]


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Téléconseiller
    Inscrit en
    Juin 2010
    Messages
    119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Téléconseiller
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2010
    Messages : 119
    Par défaut Modification combobox.text incomprenable
    Bonjour , Bonsoir

    je suis en train d'essayer d'effectuer une application pour faire mes comptes et actuellement il y a un événement que je n'arrive pas à comprendre du-moins surtout à situer.
    explication :

    je sélectionne le type d'opération que je souhaite effectuer à l'aide d'une (CheckBox) ce qui me rend une (Combobox.Enabled=True) et après avoir sélectionner mon (Combobox) celui-ci me rend un (TextBox.Enabled=True) afin d'y inscrire le montant désirer et enfin le (Button OK) deviens à son tour Enbled=true afin de me permettre d'effectuer l'opération; j'ai également un (RadioButton) pour si je souhaite annuler l'opération effectuer par mon (Button OK).

    EX :
    j'effectue mes opération en ligne 1, 2, 3, 4, 5
    puis j'annule ma dernière opération (ligne 5) ce qui me donne en image :
    http://www.hostingpics.net/viewer.php?id=27341838A.jpg

    puis j'annule mon opération ligne 4 ce qui me donne en image :
    http://hpics.li/84e45d6
    on constate le fait que dans mon (Combobox.Text) lignes 5, "Opération annuler 500" à été remplacer par "Opération annuler 0".

    pourtant voici le code de mes (RadioButton) qui me permet d'effectuer l'annulation de mes opération.

    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
    ' GESTION BOUTTON ANNULATION ESPECE 5
        Private Sub BtAnulEspece5_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtAnulEspece5.CheckedChanged
            If CheckBox10.Checked = True Then
                TextBoxEspece5.Text = (TextBoxEspece5.Text.Replace(".", ","))
                LabelResteEspece.Text = CStr(CDbl(LabelResteEspece.Text) - (TextBoxEspece5.Text))
                TextBoxEspece5.Enabled = False
                CheckBox9.Enabled = False
            End If
            If CheckBox9.Checked = True Then
                TextBoxEspece5.Text = (TextBoxEspece5.Text.Replace(".", ","))
                LabelResteEspece.Text = CStr(CDbl(LabelResteEspece.Text) + (TextBoxEspece5.Text))
                TextBoxEspece5.Enabled = False
                CheckBox10.Enabled = False
            End If
            BtValidEspece5.Enabled = False
            BtAnulEspece5.Enabled = False
            ComboBox5.Text = " Opération annuler " & (TextBoxEspece5.Text)
            TextBoxEspece5.Text = "0"
            ComboBox5.Enabled = False
            TextBoxEspece5.Enabled = False
        End Sub
    et

    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
    ' GESTION BOUTTON ANNULATION ESPECE 4
        Private Sub BtAnulEspece4_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtAnulEspece4.CheckedChanged
            If CheckBox8.Checked = True Then
                TextBoxEspece4.Text = (TextBoxEspece4.Text.Replace(".", ","))
                LabelResteEspece.Text = CStr(CDbl(LabelResteEspece.Text) - (TextBoxEspece4.Text))
                TextBoxEspece4.Enabled = False
                CheckBox7.Enabled = False
            End If
            If CheckBox7.Checked = True Then
                TextBoxEspece4.Text = (TextBoxEspece4.Text.Replace(".", ","))
                LabelResteEspece.Text = CStr(CDbl(LabelResteEspece.Text) + (TextBoxEspece4.Text))
                TextBoxEspece4.Enabled = False
                CheckBox8.Enabled = False
            End If
            BtValidEspece4.Enabled = False
            BtAnulEspece4.Enabled = False
            ComboBox4.Text = " Opération annuler " & (TextBoxEspece4.Text)
            TextBoxEspece4.Text = "0"
            ComboBox4.Enabled = False
            TextBoxEspece4.Enabled = False
        End Sub
    d'où viens le fait du changement de mon (Combobox.Text) en ligne 5
    à savoir que si j'annule l'opération ligne 3 mon (Combobox) ligne 4 deviendra à son tour "Opération annuler 0" et ainsi de suite

    je ne peu pas retirer de mon code la ligne suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TextBoxEspece4.Text = "0"
    car sinon j'obtient une erreur de calcul EX :
    j 'ai un montant total de 500
    j effectue une annulation en ligne 5 de 100
    mon résultat deviens logiquement 400
    puis j'effectue une annulation ligne 4 de 200
    là mon résultat n'a plus rien de logique car il deviens 100
    il a re-soustrait le montant 500 de la ligne 5
    donc grâce à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    TextBoxEspece4.Text = "0"
    mon calcul s'effectue correctement.

    en espérant avoir réussis à vous exposer correctement mon problème j'attends avec impatience votre lumière
    merci d'avance

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Par défaut
    Bonjour,

    Cela est logique, mais c'était un piège pas évident.
    Lorsque tu cliques sur ton radio bouton 'BtAnulEspece5', il passe de non sélectionné à sélectionné, l'événement 'BtAnulEspece5_CheckedChanged' est déclenché, et tu effectues ton traitement.

    Normal tout va bien.

    Mais lorsque tu cliques sur ton radio bouton 'BtAnulEspece4' le radio bouton 'BtAnulEspece5' passe de sélectionné à non sélectionné (principe des radio bouton un seul sélectionné) et donc à ce moment là l'événement 'BtAnulEspece5_CheckedChanged' est de nouveau déclenché. (et met à jour combobox5 avec 0)
    Il faut effectuer le traitement seulement si le radio bouton est sélectionné.

    J'ai quand même regardé trois fois avant de voir le piège. et au début , mais comme tu avais bien expliqué ton problème, j'ai fini par comprendre.

    A+, Hervé.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  3. #3
    Membre confirmé
    Homme Profil pro
    Téléconseiller
    Inscrit en
    Juin 2010
    Messages
    119
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Téléconseiller
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2010
    Messages : 119
    Par défaut
    Citation Envoyé par rv26t Voir le message
    Bonjour,

    Cela est logique, mais c'était un piège pas évident.
    Lorsque tu cliques sur ton radio bouton 'BtAnulEspece5', il passe de non sélectionné à sélectionné, l'événement 'BtAnulEspece5_CheckedChanged' est déclenché, et tu effectues ton traitement.

    Normal tout va bien.

    Mais lorsque tu cliques sur ton radio bouton 'BtAnulEspece4' le radio bouton 'BtAnulEspece5' passe de sélectionné à non sélectionné (principe des radio bouton un seul sélectionné) et donc à ce moment là l'événement 'BtAnulEspece5_CheckedChanged' est de nouveau déclenché. (et met à jour combobox5 avec 0)
    Il faut effectuer le traitement seulement si le radio bouton est sélectionné.

    J'ai quand même regardé trois fois avant de voir le piège. et au début , mais comme tu avais bien expliqué ton problème, j'ai fini par comprendre.

    A+, Hervé.
    Olala excellent Encore MERCI GRAND MERCI à toi de t'avoir pencher dessus ainsi de ta réponse trop bien explicative qui ma permis de comprendre et de résoudre mon problème.
    pff fallait y penser voir savoir quand même je me fait des cheveux blanc ...
    voila ma modification
    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
    ' GESTION BOUTTON ANNULATION ESPECE 5
        Private Sub BtAnulEspece5_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtAnulEspece5.CheckedChanged
            If CheckBox10.Checked = True Then
                TextBoxEspece5.Text = (TextBoxEspece5.Text.Replace(".", ","))
                LabelResteEspece.Text = CStr(CDbl(LabelResteEspece.Text) - (TextBoxEspece5.Text))
                TextBoxEspece5.Enabled = False
                CheckBox9.Enabled = False
            End If
            If CheckBox9.Checked = True Then
                TextBoxEspece5.Text = (TextBoxEspece5.Text.Replace(".", ","))
                LabelResteEspece.Text = CStr(CDbl(LabelResteEspece.Text) + (TextBoxEspece5.Text))
                TextBoxEspece5.Enabled = False
                CheckBox10.Enabled = False
            End If
    ' SI BtAnulEspece5 SELECTIONNER ALORS TRAITEMENT 
            If BtAnulEspece5.Checked = True Then
                ComboBox5.Text = " Opération annuler " & (TextBoxEspece5.Text)
                TextBoxEspece5.Text = "0"
            End If
            BtValidEspece5.Enabled = False
            BtAnulEspece5.Enabled = False
            ComboBox5.Enabled = False
            TextBoxEspece5.Enabled = False
        End Sub
    voila je viens de modifier grâce à toi mes annulation de 1 à 5 je peux continuer d'écrire les gestion 6 à 19 prévu dans cette form ...
    Encore MERCI

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

Discussions similaires

  1. empecher la modification du texte des combobox
    Par pierre2410 dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 10/01/2008, 17h27
  2. Combobox.text qui ne se met pas à jour
    Par davels dans le forum Delphi
    Réponses: 6
    Dernier message: 21/08/2006, 10h29
  3. modification du texte dans un menu
    Par firejocker dans le forum MFC
    Réponses: 9
    Dernier message: 20/12/2005, 12h56
  4. [.NET][C#] Modification comboBox
    Par fab2050 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 02/11/2005, 19h47
  5. combobox->text
    Par clovis dans le forum C++Builder
    Réponses: 18
    Dernier message: 21/06/2002, 15h43

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