Convertir la valeur d'une textebox en integer

Résolu
Bonjour, EN VB.net

Dans le cadre d'un travail à réalise, je doit créer un coffre fort sous forme de jeu. Dans ce contexte je doit faire coïncider la valeur d'une textbox avec une variable aléa qui fait référence à un Random. Hors lorsque j'exécute le programme, il m'est afficher :

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

Je n'arrive pas à trouver comment résoudre ce problème.

Merci de m'indiquer vos solutions :)

PS: je précise que je suis une bille en développement donc svp, explicitez un peu vos réponse =)

8 réponses

  • Votes
  • Date
  • Date décroissante
  1. salut en vb.net =)

    voilà l'exemple du code :

    Private Sub BT1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BT1.Click

    Dim random As New Random
    Dim alea As Integer

    alea = random.Next(0, 10)

    Timer.Enabled = True
    TB1.Enabled = True
    TB1.BackColor = Color.White
    PB1.Value = 0

    If TB1.Text < alea Then

    TB6.Text = "+"

    If TB1.Text > alea Then

    TB6.Text = "-"

    If TB1.Text = alea Then

    TB6.Text = "0k"
    TB2.Enabled = True

    If TB2.Text < alea Then

    TB7.Text = "+"

    If TB2.Text > alea Then

    TB7.Text = "-"

    If TB2.Text = alea Then

    TB7.Text = "0k"
    TB3.Enabled = True

    If TB3.Text < alea Then

    TB8.Text = "+"

    If TB3.Text > alea Then

    TB8.Text = "-"

    If TB3.Text = alea Then

    TB8.Text = "0k"
    TB4.Enabled = True

    If TB4.Text < alea Then

    TB9.Text = "+"

    If TB4.Text > alea Then

    TB9.Text = "-"

    If TB4.Text = alea Then

    TB9.Text = "0k"
    TB5.Enabled = True

    If TB5.Text < alea Then

    TB10.Text = "+"

    If TB5.Text > alea Then

    TB10.Text = "-"

    If TB5.Text = alea Then

    TB10.Text = "0k"

    End If

    End If

    End If

    End If

    End If

    End If

    End If

    End If

    End If

    End If

    End If

    End If

    End If

    End If

    End If

    End Sub

    Comme dit précédemment je suis loin d'être brillant en programmation, donc ce code peu paraitre tout à fait risible, j'en suis conscient ;)
    1. Contributeur
      Bonjour,
      Si j'ai bien compris !!...
      Un nouveau projet avec ...
      Un bouton > NouveauChallenge
      Un bouton > Verifier
      Un textbox et un label.
      Colle le code ci-dessous dans la form.
          Dim random As New Random
          Dim alea As Integer
      
          Private Sub TextBox1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
              If e.KeyCode = Keys.Enter Then
                  ControleValeur()
              End If
          End Sub
      
          Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
              alea = random.Next(0, 10)
          End Sub
      
          Private Sub NouveauChallenge_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NouveauChallenge.Click
              alea = random.Next(0, 10)
          End Sub
          Private Sub ControleValeur()
              Dim Tp As Integer
              Tp = Val(TextBox1.Text)
              If alea < Tp Then
                  Label1.Text = "-"
              ElseIf alea > Tp Then
                  Label1.Text = "+"
              Else
                  Label1.Text = "OK"
                  Exit Sub
              End If
              TextBox1.Text = ""
              TextBox1.Focus()
          End Sub
      
          Private Sub Verifier_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Verifier.Click
              ControleValeur()
          End Sub

      A+
      1. salut et merci pour le code je ne vais pas l'intégré directement dans le mien car ce dernier est différent, cependant merci il m'a été très utile.

        Une autre question se pose maintenant, comment faire pour que dans ma textbox la valeur, si elle n'est pas juste, puisse s'éffacer automatiquement lorsque que j'entre une autre valeur, tout cela sans avoir besoin de faire supp ?
        1. Est ce que la fonction : Cint(textbox.value) est une solution?
          1. aucune idée :/
        2. Contributeur
          Cint(textbox.value)
          Est une bonne solution, j'ai scindé dans le modèle pour plus de compréhention.
          Pour ta 2èm question... voir cette astuce en partie.
          A+