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 :

Erreur La conversion de la chaîne "" en type 'Double' n'est pas valide.


Sujet :

VB.NET

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Rien
    Inscrit en
    Juillet 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Rien
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2014
    Messages : 9
    Points : 9
    Points
    9
    Par défaut Erreur La conversion de la chaîne "" en type 'Double' n'est pas valide.
    Bonjour, je rencontre un problème quand je rentre du texte et que je clique sur Connexion si il y'a un mauvais identifiant alors il doit afficher : "Mauvais identifiant !"
    et si c'est bon il doit afficher : "Bienvenue " + TextBox1.Text + " Dévérouillage réussie !"
    Et quand je clique sur connexion dans les deux cas il m'affiche : "La conversion de la chaîne "Mauvais identifiant !" en type 'Double' n'est pas valide."

    Mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Public Class Form1
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim sr As New System.IO.StreamReader("C:\Program Files (x86)\Sécurité\Identifiant.txt")
            If TextBox1.Text = sr.ReadLine And TextBox2.Text = sr.ReadLine Then
                MessageBox.Show("Bienvenue " + TextBox1.Text + " Dévérouillage réussie !" + MessageBoxButtons.OK + MessageBoxIcon.Information)
                sr.Close()
            Else
                MessageBox.Show("Mauvais identifiant !" + MessageBoxButtons.OK + MessageBoxIcon.Error)
            End If
        End Sub
    End Class
    Comment résoudre le problème?
    Cordialement

  2. #2
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    L'OPERATEUR DE CONCATENATION EN VBNET EST L'ESPERLUETTE OU CUMMUNEMENT APPELE LE "E" COMMERCIAL (OU &)

    A NOTER : il est tout à fait possible d'utiliser le signe + mais dans le cas ou tu n'aurais pas convertis explicitement une variable en chaine alors le compilateur croit que tu tentes d'effectuer une addition comme c'est le cas avec ton erreur ici :

    ---> Composition de la messageBox actuelle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     MessageBox.Show("Mauvais identifiant !" + MessageBoxButtons.OK + MessageBoxIcon.Error)
    La messageBox est pourtant une des premières choses qu'on apprends en vbnet ! Donc pour faire court les arguments qui composent la signature de ta messageBox ne sont pas correctes !

    ---> Comme cela c'est mieux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     MessageBox.Show("Mauvais identifiant !", "Titre",MessageBoxButtons.OK, MessageBoxIcon.Error)

    A+

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Rien
    Inscrit en
    Juillet 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Rien
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2014
    Messages : 9
    Points : 9
    Points
    9
    Par défaut Ok
    Merci de ta réponse, au debut j'avait fait comme sa sauf que erreur .
    Si tu comprend voila l'erreur :


    "Erreur 1 La résolution de surcharge a échoué, car aucun 'Show' accessible ne peut être appelé sans conversion restrictive*:
    'Public Shared Function Show(owner As System.Windows.Forms.IWin32Window, text As String, caption As String) As System.Windows.Forms.DialogResult'*: L'argument qui correspond au paramètre 'owner' passe de 'String' à 'System.Windows.Forms.IWin32Window'.
    'Public Shared Function Show(owner As System.Windows.Forms.IWin32Window, text As String, caption As String) As System.Windows.Forms.DialogResult'*: L'argument qui correspond au paramètre 'text' passe de 'System.Windows.Forms.MessageBoxButtons' à 'String'.
    'Public Shared Function Show(owner As System.Windows.Forms.IWin32Window, text As String, caption As String) As System.Windows.Forms.DialogResult'*: L'argument qui correspond au paramètre 'caption' passe de 'System.Windows.Forms.MessageBoxIcon' à 'String'.
    'Public Shared Function Show(text As String, caption As String, buttons As System.Windows.Forms.MessageBoxButtons) As System.Windows.Forms.DialogResult'*: L'argument qui correspond au paramètre 'caption' passe de 'System.Windows.Forms.MessageBoxButtons' à 'String'.
    'Public Shared Function Show(text As String, caption As String, buttons As System.Windows.Forms.MessageBoxButtons) As System.Windows.Forms.DialogResult'*: L'argument qui correspond au paramètre 'buttons' passe de 'System.Windows.Forms.MessageBoxIcon' à 'System.Windows.Forms.MessageBoxButtons'. C:\Users\benjamin\Desktop\Sécurité bin\Securité\Form1.vb 9 13 Securité"

    Code maintenant avec l'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Public Class Form1
     
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim sr As New System.IO.StreamReader("C:\Program Files (x86)\Sécurité\Identifiant.txt")
            If TextBox1.Text = sr.ReadLine And TextBox2.Text = sr.ReadLine Then
                MessageBox.Show("Bienvenue " + TextBox1.Text + " Dévérouillage réussie !" + MessageBoxButtons.OK + MessageBoxIcon.Information)
                sr.Close()
            Else
                MessageBox.Show("Mauvais identifiant !", MessageBoxButtons.OK, MessageBoxIcon.Error)
            End If
        End Sub
    End Class

  4. #4
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Bon j'ai écris trop vite mais il faut utiliser l'intellisense de tps à autre...... pour savoir quel argument il faut utiliser !

    Correction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       MessageBox.Show("Mauvais identifiant !", "Titre", MessageBoxButtons.OK, MessageBoxIcon.Error)
    Et penses à corriger celui-ci également :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
      MessageBox.Show("Bienvenue " + TextBox1.Text + " Dévérouillage réussie !" + MessageBoxButtons.OK + MessageBoxIcon.Information)

    A+

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Rien
    Inscrit en
    Juillet 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Rien
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2014
    Messages : 9
    Points : 9
    Points
    9
    Par défaut merci
    Sa fonctionne merci bien !
    Donc si j'ai bien compris :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MessageBox.Show("Mauvais identifiant !", "Titre", MessageBoxButtons.OK, MessageBoxIcon.Error)
    On dit MessageBox.Show = pour ouvrir une MessageBox
    Entre () le contenue du MessageBox

    Premier () on dit ce que on veut écrit après chaque virgule on passe a une autre étape
    Par exemple ce qui y'a écrit dans la MessageBox , (passage a une autre étape) le titre , le boutton , l'icone


    Je dit sa pour savoir si j'ai bien compris cette étape car je débute et je veut être sure de ne plus faire le même genre d'erreur
    Cordialement

  6. #6
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    MessageBox est une classe qui appartient à l'espace de noms "System.Windows.Forms" référencée dans l'assembly "System.Windows.Forms.dll"

    Show est une méthode et plus précisément une fonction car elle peut retourner un résultat de type DialogResult (ou plus précisémentde type Integer).

    La signature de la méthode se situe entre parenthèse.

    Les arguments constituent la signature de la méthode (21 arguments maxi et 1 argument mini : ce dernier corresponds au texte à afficher).

    La surcharge permet de mettre les arguments que tu souhaites (proposés parmi les 21 et en respectant les types) !


    Brefff l'autocomplétion permet d'afficher en tps réel les informations concernant ce qu'il t'est possible de taper après avoir commencé à saisir qqch dans la partie code de ton EDI environnement de développement !

    Prenons un exemple :

    Ouvre le gestionnaire d’événement "Load" de ton formulaire Form1 (double clique sur le haut de ton Form1 en mode concepteur de vues).
    Commence à saisir : Messagebox. (la il va te proposer les méthodes possibles pour cette classe
    Ensuite saisi cela : Messagebox.Show( (la il va te proposer les arguments possibles dans la signature de la méthode et tu peux même avoir la description de chacun)

    Auto-complétion :

    http://imabox.fr/a3/14240720051i2Tw354.bmp

    A+

Discussions similaires

  1. Réponses: 3
    Dernier message: 02/10/2014, 12h50
  2. [Débutant] La conversion de la chaîne "" en type 'Double' n'est pas valide.
    Par amine_maximus dans le forum VB.NET
    Réponses: 6
    Dernier message: 09/06/2012, 23h11
  3. Réponses: 6
    Dernier message: 04/07/2011, 15h53
  4. Réponses: 12
    Dernier message: 07/02/2011, 23h01
  5. Réponses: 16
    Dernier message: 06/06/2007, 15h46

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