Problème calculatrice sur vb6

Fermé
alariel29 - 3 oct. 2011 à 17:50
Bonjour,
Comme indiqué dans le titre , je fais une calculatrice avec visual basic 6 et j'ai quelques souci au niveau de la programmation et notemment les opérations.
Voici mon problème :
lorsque je fait le calcul 3+3-
le programme va effectuer 3+0-3
Si quelqu'un peut m'aider , voici mon code :
Dim chaine As String 'decrit la zone text comme une chaine de caract
Dim nb1 As Double 'variable pr effectuer les operation
Dim o As Integer 'Variable pr le = et reconnait les operation
Dim Operande As Integer


Private Sub tb_0_Click()
chaine = chaine + "0"
tb_res.Text = chaine
End Sub

Private Sub tb_1_Click()
chaine = chaine + "1"
tb_res.Text = chaine
End Sub

Private Sub tb_2_Click()
chaine = chaine + "2"
tb_res.Text = chaine
End Sub

Private Sub tb_3_Click()
chaine = chaine + "3"
tb_res.Text = chaine
End Sub

Private Sub tb_4_Click()
chaine = chaine + "4"
tb_res.Text = chaine
End Sub

Private Sub tb_5_Click()
chaine = chaine + "5"
tb_res.Text = chaine
End Sub

Private Sub tb_6_Click()
chaine = chaine + "6"
tb_res.Text = chaine
End Sub

Private Sub tb_7_Click()
chaine = chaine + "7"
tb_res.Text = chaine
End Sub

Private Sub tb_8_Click()
chaine = chaine + "8"
tb_res.Text = chaine
End Sub

Private Sub tb_9_Click()
chaine = chaine + "9"
tb_res.Text = chaine
End Sub

Private Sub tb_diviser_Click()
If nb1 = 0 Then
nb1 = Val(chaine)
Else
nb1 = nb1 / Val(chaine)
End If
tb_res.Text = nb1
o = 3
chaine = ""
tb_virg.Enabled = True

End Sub

Private Sub tb_effacer_Click()
chaine = ""
tb_virg.Enabled = True
tb_res.Text = "0"
nb1 = 0

End Sub

Private Sub tb_egal_Click()
If o = 0 Then
nb1 = nb1 + Val(chaine)
End If
If o = 3 Then
nb1 = nb1 / Val(chaine)
End If
If o = 2 Then
nb1 = nb1 * Val(chaine)
End If
If o = 1 Then
nb1 = nb1 - Val(chaine)
End If
tb_res.Text = nb1
nb1 = 0
chaine = ""
tb_virg.Enabled = True


End Sub

Private Sub tb_fermer_Click()
End
End Sub

Private Sub tb_fois_Click()
If nb1 = 0 Then
nb1 = Val(chaine)
Else
nb1 = nb1 * Val(chaine)
End If
tb_res.Text = nb1
o = 2
chaine = ""
tb_virg.Enabled = True

End Sub

Private Sub tb_moin_Click()
o = 1
tb_res.Text = nb1
If nb1 = 0 Then
nb1 = Val(chaine)
Else
nb1 = nb1 - Val(chaine)
End If
chaine = ""
tb_virg.Enabled = True

End Sub

Private Sub tb_plus_Click()
nb1 = nb1 + Val(chaine)
tb_res.Text = nb1
o = 0
chaine = ""
cmdvirgule.Enabled = True


End Sub

Private Sub tb_virg_Click()
chaine = chaine + "."
tb_res.Text = chaine
tb_virg.Enabled = False
End Sub

merci