J'ai un bogue dans mon programme où si un utilisateur appuie sur le bouton de vérification (calculer) quand il n'y a pas d'entrée dans la zone de texte, le programme affiche cette erreur: "Conversion from string" " taper 'Double' n'est pas valide. " Je voudrais résoudre ceci mais je ne suis pas sûr comment faire la conversion. Je pensais peut-être CType mais j'entends parler d'analyse. Comment je vais à ce sujet? la zone de texte est appelée mskTxtInput et l'objet bouton est appelé btnCheck qui effectue tout le calcul et le traitement.VB.Net Conversion de chaîne en double
Mise à jour: Ceci est mon code sauf la méthode d'analyse donc j'espère que cela aide un peu!
Private Sub btnCheck_Click (sender ByVal comme System.Object, ByVal e comme System.EventArgs) Poignées btnCheck.Click pic1.Visible = False « image cacher pic1.Image = My.Resources.A pic2.Image = My.Resources.F
Dim value As Double
If Double.TryParse(mskTxtInput.Text, value) = Then
MsgBox("parsing success") ' parsing worked, so use the value in here
Else
MsgBox("parsing failed") ' parsing failed, so alert the user to that fact
End If
If radAdd.Checked = True Then
totalNum = num1 + num2
End If
If radSub.Checked = True Then
totalNum = num1 - num2
End If
If radMulti.Checked = True Then
totalNum = num1 * num2
End If
If mskTxtInput.Text = totalNum Then
lblAns.Text = ("Correct!")
lblAns2.Text = ("Answer is " & totalNum)
pic1.Visible = True
wins = wins + 1
nScore = wins
Else
lblAns.Text = ("Incorrect")
lblAns2.Text = ("Answer should be " & totalNum)
pic2.Visible = True
End If
attempts = attempts + 1
If attempts = 5 Then
MessageBox.Show("Game Finished! ", "End Of Game", _
MessageBoxButtons.OK, _
MessageBoxIcon.Exclamation)
lblAns.Text = ("You scored " & wins & " Out of 5")
btnSpin.Enabled = False
pic1.Visible = False
pic2.Visible = False
lblAns2.Text = ""
lblAns2.Text = "Play again?"
btnCheck.Enabled = False
btnNew.Enabled = True
attempts = 0
wins = 0
End If
mskTxtInput.Clear()
mskTxtInput.Focus()
End Sub
S'il vous plaît partager un code où ce problème se produit. – BeemerGuy
Ceci n'est pas directement lié à votre question, mais il semble que vous n'utilisiez pas 'Option Strict'. Je vous recommande de l'activer: le compilateur génère ensuite des avertissements sur les codes dangereux qui vous feront gagner du temps à long terme. – MarkJ