addition, division, soustraction, multiplication, pourcentage! presque comme une vrai !:)
utilisation par le pavé numérique. Et pseudo design enfantin..(JOKER!)
Source / Exemple :
Dim strEcr As String
Dim NouveauNumero As Double
Dim AncienNumero As Double
Dim Action As String
Dim ActionPourcentage As Boolean
Private Sub form_load()
frmCalculatrice.Left = 6000
frmCalculatrice.Top = 1200
End Sub
Private Sub cmdCalculatrice_Click(Index As Integer)
strEcr = strEcr & CByte(Index)
appendString (strEcr)
End Sub
Private Sub appendString(strEcr)
txt_calculatrice.Text = strEcr
End Sub
Private Sub CmdDecimal_Click()
strEcr = strEcr & ","
appendString (strEcr)
End Sub
Private Sub CmdFIN_Click()
Unload Me
End Sub
Private Sub CmdNew_Click()
strEcr = ""
txt_calculatrice.Text = 0
NouveauNumero = 0
AncienNumero = 0
Action = ""
lblContainer.Caption = ""
End Sub
Private Sub cmdOperations_Click(Index As Integer)
On Error Resume Next
If Not ActionPourcentage = True Then
Select Case Action
'----------------------------------------------
Case "Addition"
NouveauNumero = CDbl(strEcr)
txt_calculatrice.Text = NouveauNumero + CDbl(lblContainer.Caption)
lblContainer.Caption = txt_calculatrice.Text
'----------------------------------------------
Case "Soustraction"
NouveauNumero = CDbl(strEcr)
txt_calculatrice.Text = CDbl(lblContainer.Caption) - NouveauNumero
lblContainer.Caption = txt_calculatrice.Text
Case "Multiplication"
NouveauNumero = CDbl(strEcr)
txt_calculatrice.Text = CDbl(lblContainer.Caption) * NouveauNumero
lblContainer.Caption = txt_calculatrice.Text
Case "Division"
NouveauNumero = CDbl(strEcr)
txt_calculatrice.Text = CDbl(lblContainer.Caption) / NouveauNumero
lblContainer.Caption = txt_calculatrice.Text
Case "Egale"
'
Case Else
lblContainer.Caption = txt_calculatrice.Text
End Select
Select Case Index
Case 0
Action = "Addition"
Case 1
'
Action = "Soustraction"
Case 2
'
Action = "Multiplication"
Case 3
'
Action = "Division"
Case 4
Action = "Egale"
End Select
Else
Dim result As Double
If Action = "Addition" Then
result = CDbl(lblContainer.Caption) + CDbl(txt_calculatrice.Text)
Else
result = CDbl(lblContainer.Caption) - CDbl(txt_calculatrice.Text)
End If
txt_calculatrice.Text = result
ActionPourcentage = False
Action = ""
End If
'
'remise de l'affichage à 0
strEcr = ""
End Sub
Private Sub CmdPourcent_Click()
On Error Resume Next
txt_calculatrice.Text = (CDbl(lblContainer.Caption) * CDbl(txt_calculatrice.Text)) _
/ 100
ActionPourcentage = True
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case 48 '0
cmdCalculatrice_Click (0)
Text1.Text = ""
Case 49 '1
cmdCalculatrice_Click (1)
Text1.Text = ""
Case 50 '2
cmdCalculatrice_Click (2)
Text1.Text = ""
Case 51 '3
cmdCalculatrice_Click (3)
Text1.Text = ""
Case 52 '4
cmdCalculatrice_Click (4)
Text1.Text = ""
Case 53 '5
cmdCalculatrice_Click (5)
Text1.Text = ""
Case 54 '6
cmdCalculatrice_Click (6)
Text1.Text = ""
Case 55 '7
cmdCalculatrice_Click (7)
Text1.Text = ""
Case 56 '8
cmdCalculatrice_Click (8)
Text1.Text = ""
Case 57 '9
cmdCalculatrice_Click (9)
Text1.Text = ""
Case 43 '+
cmdOperations_Click (0)
Text1.Text = ""
Case 45 '-
cmdOperations_Click (1)
Text1.Text = ""
Case 42 '*
cmdOperations_Click (2)
Text1.Text = ""
Case 47 '/
cmdOperations_Click (3)
Text1.Text = ""
Case 13 'enter o(=)
'empèche le beep
KeyAscii = 0
cmdOperations_Click (4)
Text1.Text = ""
Case 46 '. (point décimal)
CmdDecimal_Click
Text1.Text = ""
Case 37 '% (pourcentage)
CmdPourcent_Click
Text1.Text = ""
Case 99 Or 67
CmdNew_Click
Case 113 Or 81 'q ou Q
Unload Me
End Select
End Sub
Private Sub txt_calculatrice_Change()
Text1.SetFocus
End Sub
'---------------------------------------------------------------------------------vb@visuelsonic.com
Conclusion :
...
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.