Bug lors d'une vérification au démarrage d'une form
Résolu
DarkNight5047
-
Polux31 Messages postés 7219 Statut Membre -
Polux31 Messages postés 7219 Statut Membre -
Bonjour, j'ai actuellement un bug :/
Lors du chargement du logiciel (Form1.Load) j'ai mis verification() et le code de cette "verification()" est celui ci :
Mais il détecte seulement le fichier label2N alors que le label3N et le label4N existes ! Ils ne les affiches pas dans les labels qui restent invisible. Quelqu'un peut m'aider à résoudre ce problème/bug ?
Lors du chargement du logiciel (Form1.Load) j'ai mis verification() et le code de cette "verification()" est celui ci :
Private Sub verification()
If Exists("C:\passwordsaver\label2N.txt") Then
Panel1.Visible = True
Label2.Visible = True
Dim SR As New StreamReader("C:\passwordsaver\label2N.txt")
Label2.Text = SR.ReadToEnd
SR.Close()
ElseIf Exists("C:\passwordsaver\label3N.txt") Then
Panel2.Visible = True
Label3.Visible = True
Dim SR As New StreamReader("C:\passwordsaver\label3N.txt")
Label3.Text = SR.ReadToEnd
SR.Close()
ElseIf Exists("C:\passwordsaver\label4N.txt") Then
Panel3.Visible = True
Label4.Visible = True
Dim SR As New StreamReader("C:\passwordsaver\label4N.txt")
Label4.Text = SR.ReadToEnd
SR.Close()
End If
End Sub
Mais il détecte seulement le fichier label2N alors que le label3N et le label4N existes ! Ils ne les affiches pas dans les labels qui restent invisible. Quelqu'un peut m'aider à résoudre ce problème/bug ?
4 réponses
-
Bonjour,
Tu veux dire qu'il n'affiche que le label1 ?
-
exactement ! il est censer afficher les 3 labels car les 3 fichiers existes mais il n'affiche que la label2..
-
C'est normal qu'il n'affiche que le label2 dans ta condition If Then .... C'est ce que tu lui demandes de faire !!!
As-tu testé ton code en faisant du pas à pas ?
-
Tu n'a pas bien regarder mon code, ou ne connait pas bien le vb.net. Regarde bien la suite :
ElseIf Exists("C:\passwordsaver\label3N.txt") Then Panel2.Visible = True Label3.Visible = True Dim SR As New StreamReader("C:\passwordsaver\label3N.txt") Label3.Text = SR.ReadToEnd SR.Close() ElseIf Exists("C:\passwordsaver\label4N.txt") Then Panel3.Visible = True Label4.Visible = True Dim SR As New StreamReader("C:\passwordsaver\label4N.txt") Label4.Text = SR.ReadToEnd SR.Close()
Dans ce code, il fait 2 autres if qui lui demande d'afficher la label3 et 4 si les fichiers existes et c'est le cas mais il ne les affiches pas..-
-
Tu n'a pas bien regarder mon code, ou ne connait pas bien le vb.net.
Tu inverses les rôles là ...
Je pense que tu as des difficultés à comprendre le fonctionnement d'un IF ... Then ... Else qui se traduit par Si (condition = Vrai) Alors Fait ça Sinon Fait cela !!!
Si la 1ère condition du IF est vraie, il ne passera jamais dans les ElseIf !!! Un test au pas à pas, comme conseillé, t'aurai permis de le voir !!! -
Ok alors j'ai vu un truck bizard : ce code marcher à un moment. donc c'est cool. Je suis aller sur google et ils disent ce que tu dit : Introduit une condition à tester si le test conditionnel précédent a échoué.
Donc dsl je me suis tromper mais c'est bizard que ce code fonctionner a un moment ..
Sur ce merci ! -
-
-