Erreur !

Résolu
Micoute - 10 févr. 2013 à 17:46
 Micoute - 13 févr. 2013 à 11:26
Bonjour à tous,

J'ai un problème, car je ne comprend pas cette erreur



je répéte l'adresse au cas où l'image se s'afficherait pas :
http://dl.free.fr/rm.pl'h=vOyM8OqsD&i=55337296&s=7FwW89yGRgi9piFBh6oF4YA9eWY3j3bk

Quelqu'un serait-il assez aimable pour me l'expliquer, je vous en remercie par avance.


Tout homme doit être poli ; mais il doit aussi être libre.

53 réponses

cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
11 févr. 2013 à 22:03
mais c'est dans l'erreur qu'on progresse, n'est-ce pas ?

As tu lu le message
du
lundi 11 février 2013 à 11:07:41 | Re : Erreur !
0
Bien sûr que je l'ai lu, mais je ne sais pas encore travailler avec des panels, est-ce qu'on peut leur mettre des onglets ? Comme ça j'en mettrais un par matière, car je voudrais faire quelque du genre répertoire téléphonique. Ça prendrait peut de place et effectivement le tout tiendrait dans un seul formulaire.

En tous cas, grand merci à tous, car j'adore apprendre.


Tout homme doit être poli ; mais il doit aussi être libre.
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
11 févr. 2013 à 22:55
mais je ne sais pas encore travailler avec des panels, est-ce qu'on peut leur mettre des onglets


essai place sur ta form un panel et un tabcontrol
dedans

bonne chance
0
cs_dayvid Messages postés 212 Date d'inscription mardi 18 janvier 2011 Statut Membre Dernière intervention 12 février 2013 1
12 févr. 2013 à 00:59
Mais il nous fais quoi lui, une centrale nucléaire
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Bonjour Micoute.

Il y a quelque temps, je vous avais indiqué que pour la sûreté de fonctionnement de votre programme, il fallait n'accepter que des entrées strictement positives. Le TryParse ne suffit donc pas. Je vous propose d'employer l'utilitaire suivant

Private Function EntréeValide(ByVal tBox As TextBox, ByRef x As Single) As Boolean
        Return Single.TryParse(tBox.Text, x) AndAlso x > 0
    End Function


Cordialement.


Étant illettré, je signe d'une croix : ×
0
Bonjour à tous et merci beaucoup pour vos réponses qui me font faire des bonds de géant.

Je ne comprend toujours pas pourquoi j'ai toujours le même message d'erreur quand j'appuie sur F5.

Je vous poste mon code pour vous puissiez l'analyser.

Public Class Form1
    Public U, I, R, P, Nbre1, Nbre2, Résultat As Single
    Dim Choix As Byte
    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        RbURI.Checked = False
        RbUPR.Checked = False
        RbUPI.Checked = False
        RbITP.Checked = False
        RbIPR.Checked = False
        RbITR.Checked = False
        RbRPI.Checked = False
        RbRTI.Checked = False
        RbRTP.Checked = False
        RbPTR.Checked = False
        RbPTI.Checked = False
        RbPRI.Checked = False
    End Sub

    Private Sub RbURI_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbURI.CheckedChanged
        If RbURI.Checked = True Then
            LblU1.Text = "Résistance en Ohms"
            LblU2.Text = "Intensité en Ampères"
            Choix = 1
        End If
    End Sub

    Private Sub RbUPR_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbUPR.CheckedChanged
        If RbUPR.Checked = True Then
            LblU1.Text = "Puissance en Watts"
            LblU2.Text = "Résistance en Ohms"
            Choix = 2
        End If
    End Sub

    Private Sub RbUPI_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbUPI.CheckedChanged
        If RbUPI.Checked = True Then
            LblU1.Text = "Puissance en Watts"
            LblU2.Text = "Intensité en Ampères"
            Choix = 3
        End If
    End Sub

    Private Sub BtnUConvertir_Click(sender As System.Object, e As System.EventArgs) Handles BtnUConvertir.Click
        If Single.TryParse(TxtU1.Text, Nbre1) And Single.TryParse(TxtU2.Text, Nbre2) Then
            If Choix = 1 Then
                ' Résistance et Intensité
                TxtResultatU.Text = "La différence de potentiel est de " & (Nbre1 * Nbre2).ToString & " Volts"
            ElseIf Choix = 2 Then
                ' Puissance et Résistance
                TxtResultatU.Text = "La différence de potentiel est de " & (Math.Sqrt(Nbre1) * Nbre2).ToString & " Volts"
            ElseIf Choix = 3 Then
                ' Puissance et Intensité
                TxtResultatU.Text = "La différence de potentiel est de " & (Nbre1 / Nbre2).ToString & " Volts"
            End If
        Else
            TxtResultatU.Text = "Vous devez entrer uniquement des nombres"
        End If
    End Sub

    Private Sub RbITP_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbITP.CheckedChanged
        If RbITP.Checked = True Then
            LblI1.Text = "Tension en volts"
            LblI2.Text = "Puissance en Watts"
            Choix = 4
        End If
    End Sub

    Private Sub RbIPR_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbIPR.CheckedChanged
        If RbIPR.Checked = True Then
            LblI1.Text = "Puissance en Watts"
            LblI2.Text = "Résistance en Ohms"
            Choix = 5
        End If
    End Sub

    Private Sub RbITR_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbITR.CheckedChanged
        If RbITR.Checked = True Then
            LblI1.Text = "Tension en Volts"
            LblI2.Text = "Résistance en Ohms"
            Choix = 6
        End If
    End Sub

    Private Sub BtnIConvertir_Click(sender As System.Object, e As System.EventArgs) Handles BtnIConvertir.Click
        If Single.TryParse(TxtI1.Text, Nbre1) And Single.TryParse(TxtI2.Text, Nbre2) Then
            If Choix = 4 Then
                ' Tension et Puissance
                Single.TryParse(TxtI1.Text, Nbre2)
                Single.TryParse(TxtI2.Text, Nbre1)
                TxtResultatI.Text = "L'intensité est de " & (Nbre1 / Nbre2).ToString & " Ampères"
            ElseIf Choix = 5 Then
                'Puissance et Résistance
                TxtResultatI.Text = "L'intensité est de " & (Math.Sqrt(Nbre1 / Nbre2)).ToString & " Ampères"
            ElseIf Choix = 6 Then
                'Tension et Résistance
                TxtResultatI.Text = "L'intensité est de " & (Nbre1 / (Nbre2 * Nbre2)).ToString & " Ampères"
            End If
        Else
            TxtResultatI.Text = "Vous devez entrer uniquement des nombres"
        End If
    End Sub

    Private Sub RbRPI_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbRPI.CheckedChanged
        If RbRPI.Checked = True Then
            LblR1.Text = "Puissance en Watts"
            LblR2.Text = "Intensité en Ampères"
            Choix = 7
        End If
    End Sub

    Private Sub RbRTI_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbRTI.CheckedChanged
        If RbRTI.Checked = True Then
            LblR1.Text = "Tension en Volts"
            LblR2.Text = "Intensité en Ampères"
            Choix = 8
        End If
    End Sub

    Private Sub RbRTP_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbRTP.CheckedChanged
        If RbRTP.Checked = True Then
            LblR1.Text = "Tension en Volts"
            LblR2.Text = "Puissance en Watts"
            Choix = 9
        End If
    End Sub

    Private Sub BtnRConvertir_Click(sender As System.Object, e As System.EventArgs) Handles BtnRConvertir.Click
        If Single.TryParse(TxtR1.Text, Nbre1) And Single.TryParse(TxtR2.Text, Nbre2) Then
            If Choix = 7 Then
                ' Puissance et Intensité
                TxtResultatR.Text = "La résistance est de " & (Nbre1 / (Nbre2 * Nbre2)).ToString & " Ohms"
            ElseIf Choix = 8 Then
                ' Tension et Intensité
                TxtResultatR.Text = "La résistance est de " & (Nbre1 / Nbre2).ToString & " Ohms"
            ElseIf Choix = 9 Then
                ' Tension et Puissance
                TxtResultatR.Text = "La résistance est de " & ((Nbre1 * Nbre1) / Nbre2).ToString & " Ohms"
            End If
        Else
            TxtResultatR.Text = "Vous devez uniquement entrer des nombres"
        End If
    End Sub

    Private Sub RbPTR_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbPTR.CheckedChanged
        If RbPTR.Checked = True Then
            LblP1.Text = "Tension en Watts"
            LblP2.Text = "Résistance en Ohms"
            Choix = 10
        End If
    End Sub

    Private Sub RbPTI_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbPTI.CheckedChanged
        If RbPTI.Checked = True Then
            LblP1.Text = "Tension en Volts"
            LblP2.Text = "Intensité en Ampères"
            Choix = 11
        End If
    End Sub

    Private Sub RbPRI_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles RbPRI.CheckedChanged
        If RbPRI.Checked = True Then
            LblP1.Text = "Résistance en Ohms"
            LblP2.Text = "Intensité en Ampères"
            Choix = 12
        End If
    End Sub

    Private Sub BtnPConvertir_Click(sender As System.Object, e As System.EventArgs) Handles BtnPConvertir.Click
        If Single.TryParse(TxtP1.Text, Nbre1) And Single.TryParse(TxtP2.Text, Nbre2) Then
            If Choix = 10 Then
                ' Tension et Résistance
                TxtResultatP.Text = "La puissance est de " & ((Nbre1 * Nbre1) / Nbre2).ToString & " Watts"
            ElseIf Choix = 11 Then
                ' Tension et Intensité
                TxtResultatP.Text = "La puissance est de " & (Nbre1 * Nbre2).ToString & " Watts"
            ElseIf Choix + 12 Then
                'Résistance et Intensité
                TxtResultatP.Text = "La puissance est de " & (Nbre1 * (Nbre2 * Nbre2)).ToString & " Watts"
            End If
        Else
            TxtResultatP.Text = "Vous ne devez uniquement entrer des nombres"
        End If
    End Sub
End Class


Pourtant je n'ai pas de fichiers avec des ponctuations.

Merci encore.

Tout homme doit être poli ; mais il doit aussi être libre.
0
Bonjour Micoute.

Je me refuse à analyser votre code, car cela ne vous apprendrait rien. Par contre, je suis tout-à-fait disposé à vous aider à l'analyser vous-même.
Dans votre Form1, désactivez toutes vos méthodes (Sub), sauf la première, et lancez le programme (F5). En cas de message d'erreur, cherchez à comprendre ce qui cloche dans la première méthode. Mais si tout va bien, réactivez la seconde et continuez de la sorte, jusqu'à épuisement des méthodes ou de vous-même.

Bon courage.


Étant illettré, je signe d'une croix : ×
0
Utilisateur anonyme
12 févr. 2013 à 12:33
Pour un même type d'événement, une seule procédure suffit. Il faut simplement y abonner tes contrôles concernés avec l'instruction Handles :
e As System.EventArgs) Handles RbPTR.CheckedChanged, RbIPR.ChechedChanged, ...

On saura ensuite lequel des contrôles à déclenché l'événement en faisant un cast de l'objet 'sender' :
if directcast(sender, checkbox).checked then lblR1.text = "blabla"

Tu réduiras ainsi ton code de trois quarts
0
Re bonjour à tous et surtout merci,

je crois bien que ça va me compliquer de faire simple, car je ne connait absolument pas cette façon de procéder et en plus j'apprends de nouveaux termes, mais effectivement, je vais essayer cette syntaxe.

Et comme d'habitude, je vous remercie beaucoup, à très bientôt.


Tout homme doit être poli ; mais il doit aussi être libre.
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
12 févr. 2013 à 19:33
Salut
Je ne comprend toujours pas pourquoi j'ai toujours le même message d'erreur quand j'appuie sur F5.


quel est exactement le message d'erreur
qui apparait sur l'écran ?
0
Bonsoir ShayW,

ça y est, mon problème est résolu, en fait, malgré ce que je pensais, il y avait effectivement un nom de fichier avec une apostrophe "Loi d'Ohm" que j'ai changé en "Loi d Ohm" et paf ça à fait des chocapic et tout fonctionnait à merveille.

Merci tout de même, car c'est bien grâce aux conseils que je reçoit que j'ai pu trouver l'erreur.



Tout homme doit être poli ; mais il doit aussi être libre.
0
Utilisateur anonyme
12 févr. 2013 à 23:17
Bonjour,

il y avait effectivement un nom de fichier avec une apostrophe "Loi d'Ohm" que j'ai changé en "Loi d Ohm"



Donc, c'est moi qui gagne.
0
Bonjour monsieur cmarcotte,

finalement oui, mais maintenant quand j'aurai ce message à nouveau, je n'aurai pas besoin d'ameuter toutes les bonnes volonté, donc merci à tous du fond du coeur

Tout homme doit être poli ; mais il doit aussi être libre.
0
Rejoignez-nous