Comment faire une calculatrice avec Visual Basic

Microsoft Visual Basic est un langage de programmation basé sur le langage BASIC, initialement développé pour rendre la programmation plus facile à apprendre. Visual Basic prend les commandes familières de BASIC et ajoute des outils et des interfaces orientées objet pour la conception WYSIWYG comme des applications Windows et des contrôles Web, parmi beaucoup d'autres améliorations. Un projet relativement simple d'apprentissage pour Visual Basic est la création d'une calculatrice Windows.

Instructions

1 Comment faire une calculatrice avec Visual Basic

Ouvrez Visual Basic 6, et sélectionnez "EXE standard" dans le menu nouveau projet. Vous verrez un formulaire vierge apparaît à l'écran.

2 Comment faire une calculatrice avec Visual Basic


Renommez votre projet et votre formulaire en cliquant sur "Projet1" à la droite de l'écran, dans la liste des projets, et en entrant un nouveau nom dans le champ "Nom" ligne de la boîte de propriétés, qui devrait apparaître en dessous de la liste de projets par défaut. Appuyez sur "Entrée" pour accepter le nouveau nom. Faites la même chose pour votre formulaire (un nom de formulaire proposé est "CalculatorUI"), en prenant soin d'entrer un nom similaire dans la propriété "Caption" aussi bien, qui va changer le texte dans la barre supérieure de la forme. Enregistrez le projet dans un nouveau dossier sur votre ordinateur.

3 Comment faire une calculatrice avec Visual Basic


Ajouter des boutons et une zone de texte au formulaire. D'abord, ajouter une zone de texte, qui sera où les numéros entrés dans la calculatrice apparaissent, ainsi que les résultats des calculs. Pour ce faire, en sélectionnant le bouton TextBox de la barre d'outils sur le côté gauche de l'écran, puis en faisant glisser avec votre souris la taille et l'emplacement que vous désirez pour la zone de texte. Une fois que vous avez placé le TextBox vous pouvez changer la taille et l'emplacement en le faisant glisser vers un autre emplacement de la forme ou en faisant glisser les poignées (les petits carrés) le long de la frontière de la zone de texte. Assurez-vous de changer les lignes suivantes dans la fenêtre Propriétés, avec la zone de texte sélectionné: "(Nom)" = tbResult, "Alignement" = 1- Droit Justifier, "Format de données" = (cliquez sur le bouton "..." pour sélectionnez) Numéro, "Verrouillé" = True, et "texte" = 0.

4 Comment faire une calculatrice avec Visual Basic


Sélectionnez l'icône de commande sur la barre d'outils et de créer le premier bouton de la même façon que vous avez créé la zone de texte pour ajouter des boutons. Pour référence, utilisez la calculatrice de Windows en mode Standard (Programmes> Accessoires> Calculatrice) comme base pour votre mise en page de la calculatrice, laissant de côté le "MC", "MR", "MS", et "M +" boutons. Sur chaque bouton, modifier les propriétés suivantes (en utilisant le bouton "+", par exemple): «(Nom)" = btnPlus, "Légende" = +. Faites la même chose pour le reste des boutons de la calculatrice, puis enregistrez votre travail. Votre formulaire devrait maintenant ressembler à l'exemple montré ici.

5 Ajoutez le code. Notez que si vos boutons et textbox ne sont pas le même nom que le code indiqué ici attend, vous aurez besoin de changer les noms pour correspondre à vos boutons et textbox ou modifier vos boutons et textbox pour correspondre à ce code. Tout d'abord, nous devons créer quelques variables pour l'entrée de la calculatrice de traitement:

Dim sLeft As String, sRight As String, sOperator As String
Dim iLeft As Double, iRight As Double, iResult As Double
Dim bLeft As Boolean

Chaque calcul se compose de quatre parties: un numéro à la gauche de l'opérateur (sLeft, iLeft), un opérateur (sOperator), un numéro à la droite de l'opérateur (sRight, iRight), et un résultat (iResult). Afin de suivre si l'utilisateur entre dans le nombre gauche ou à droite, nous avons besoin de créer une variable booléenne, bLeft. Si bLeft est vrai, le côté gauche du calcul est entré; si bLeft est faux, le côté droit est entré.

6 Initialiser la variable bLeft. Nous faisons cela en créant un sous-programme Form_Load, que vous pouvez soit le type comme indiqué ici ou créer automatiquement en double-cliquant sur une partie quelconque de la forme non couverte par un bouton ou zone de texte. Dans la fonction, nous devons définir bLeft True, parce que le premier numéro entré sera la partie gauche:

Private Sub Form_Load ()

bLeft = True

End Sub

7 Comment faire une calculatrice avec Visual Basic

Créer un sous-programme qui va gérer le cliquetis de l'une des touches numériques. Nous créons cela comme un sous-programme, car nous utilisons un code identique pour chaque bouton, et en utilisant un sous-programme signifie ne pas avoir à répéter le même code dix fois. Entrez ce qui suit ci-dessous Fin de la ligne de Sous le sous-programme Form_Load:

Private Sub AddNumber (sNumber As String)

If bLeft Then
sLeft = sLeft + sNumber
tbResult.Text = sLeft
Else
sRight = sRight + sNumber
tbResult.Text = sRight
End If

End Sub

Comme vous pouvez le voir, cette fonction prend un paramètre de chaîne, sNumber, qui contiendra le numéro que l'utilisateur a cliqué sur. Si bLeft est vrai, ce nombre est ajouté à la chaîne qui représente le nombre étant entré, sLeft, et la zone de texte, tbResult, est mis à jour pour afficher le nouveau numéro. Si bLeft est fausse, la même opération est effectuée en utilisant sRight place.

Enfin, créer une fonction d'événement Click pour chaque numéro qui appelle notre sous-programme AddNumber. Vous pouvez le faire facilement en double-cliquant sur chaque touche numérique, qui permettra de créer la structure de sous-programme pour vous. Ajoutez ensuite l'appel à AddNumber, en remplaçant le nombre de citations avec le numéro associé à la touche. Pour le bouton zéro, votre code ressemblera à ceci:

Private Sub btn0_Click ()

AddNumber ("0")

End Sub

De même, pour le bouton un, votre code ressemblera à ceci:

Private Sub btn1_Click ()

AddNumber ("1")

End Sub

8 Manipuler les opérateurs: plus, moins, fois, et diviser. Nous ferons cela comme la dernière étape, la création d'un sous-programme qui est appelé dans les événements Click pour les boutons de commande. Le sous-programme ressemblera à ce qui suit:

Private Sub AddOperator (sNewOperator As String)

If bLeft Then
sOperator = sNewOperator
bLeft = False
Else
btnEquals_Click
sOperator = sNewOperator
sRight = ""
bLeft = False
End If

End Sub

Si bLeft est vrai, ce qui signifie que l'utilisateur vient d'entrer dans la partie gauche du calcul, ce sous-programme définit la variable sOperator nous avons créé à l'étape 5 pour égaler l'opérateur est entré, qui est passé à AddOperator que la chaîne sNewOperator. La deuxième étape consiste à définir bLeft False, parce que l'entrée d'un opérateur signifie que l'utilisateur se fait entrer dans le côté gauche de l'équation. Afin de gérer les entrées de cette chaîne plusieurs opérateurs ensemble, comme 9

3 2 * 6, nous devons vérifier également si bLeft est faux, ce qui signifie que l'utilisateur a entré un opérateur où nous nous attendions à un signe égal. D'abord, nous appelons l'événement Click pour le bouton est égal à (décrit dans l'étape suivante), qui fait le calcul et définit tbResult le résultat de ce qui a déjà été saisi. Ensuite, nous sRight clair afin que l'utilisateur peut entrer le numéro suivant, et réglez bLeft sur False afin que le programme sait que nous entrons dans la partie droite du calcul suivant.

Enfin, ajoutez un appel AddOperator à l'événement Click de chaque bouton de l'opérateur, en utilisant la même méthode que nous avons utilisé à l'étape 7 pour créer les événements Click pour les touches numériques. Votre code pour le bouton plus ressemblera à ceci:

Private Sub btnPlus_Click ()

AddOperator ("+")

End Sub

De même, le code de la touche moins ressemblera à ceci:

Private Sub btnMinus_Click ()

AddOperator ("-")

End Sub

9 Créer l'événement Click pour le bouton égaux, qui est le code le plus complexe dans ce programme. Créez la structure de sous-programme comme vous avez fait pour les autres boutons, en double-cliquant sur le bouton equals sur votre formulaire. Votre sous-programme ressemblera à ceci lorsque vous avez entré le code:

Private Sub btnEquals_Click ()

If sLeft <> "" And sRight = "" And sOperator <> "" Then
sRight = sLeft
End If

Si sLeft & lt;> "" Et sRight & lt;> "" Et sOperator & lt;> "" Ensuite,
iLeft = sLeft
iRight = sRight

Select Case sOperator
Case "+"
iResult = iLeft + iRight
Case "-"
iResult = iLeft - iRight
Case "/"
iResult = iLeft / iRight
Case "*"
iResult = iLeft * iRight
End Select

tbResult.Text = iResult

sLeft = iResult
sRight = ""
bLeft = True
Fin si

End Sub

Les trois premières lignes de vérification de code pour vérifier si les deux côtés du calcul ont été entrées avec un opérateur. Si seul le côté gauche et un opérateur sont entrés, la valeur du côté gauche est copié vers la droite, de sorte que nous pouvons imiter le comportement de calculatrice standard pour manipuler une entrée comme 9 * =, qui multiplie 9 par lui-même pour obtenir un résultat de 81. le reste du code ne fonctionnera que si gauche, à droite, et l'opérateur sont entrés, et commence par copier les chaînes de nombres dans nos variables iLeft et iRight Double-dactylographiées, qui peut faire les calculs réels. L'instruction Select Case nous permet d'exécuter un code différent en fonction de l'opérateur qui a été saisi, et effectue le calcul réel, en plaçant le résultat dans iResult. Enfin, nous mettons à jour la zone de texte avec le résultat, copier le résultat dans sLeft, réinitialiser sRight et mis bLeft = True. Ces dernières lignes nous permettent de prendre le résultat du calcul et de l'utiliser pour effectuer un autre calcul.

dix Manipuler les trois dernières touches de fonctionnement: sqrt,%, et 1 / x. Pour l'événement Click du bouton de racine carrée, votre code ressemblera à ceci:

Private Sub btnSqrt_Click ()

If sLeft <> "" Then
iLeft = sLeft
Else
iLeft = 0
End If

Si sRight & lt;> "" Ensuite,
iRight = sRight
Autre
iRight = 0
Fin si

Si bLeft Puis
iLeft = Math.Sqr (iLeft)
tbResult.Text = iLeft
Autre
iRight = Math.Sqr (iLeft)
tbResult.Text = iRight
Fin si

Si iLeft & lt;> 0 Then
sLeft = iLeft
Autre
sLeft = ""
Fin si

Si iRight & lt;> 0 Then
sRight = iRight
Autre
sRight = ""
Fin si

End Sub

Les 11 premières lignes de code assurez-vous que si nous ne disposons pas d'une valeur entrée pour chaque côté de l'équation, nous substituer des zéros au lieu d'essayer de copier une chaîne vide dans iLeft ou iRight, qui va générer une erreur. Les lignes intermédiaires remplissent la fonction de la racine carrée de la part actuelle du calcul, soit à gauche ou à droite. Enfin, nous inversons les vérifications que nous avons fait au début de sorte qu'un zéro est copié comme une chaîne vide dans sLeft et sRight.

Pour le bouton pour cent, le code est similaire, à une exception près: l'opération de pour cent ne peut être effectuée que si les deux côtés gauche et droit sont entrés.

Private Sub btnPercent_Click ()

If Not bLeft Then
If sRight <> "" Then
iRight = sRight
Else
iRight = 0
End If

iRight = iRight * (iLeft / 100)
tbResult.Text = iRight

Si iRight & lt;> 0 Then
sRight = iRight
Autre
sRight = ""
Fin si
Fin si

End Sub

Enfin, le 1 / x, ou fraction, Cliquez événement, qui est très similaire au code ci-dessus:

Private Sub btnFraction_Click ()

If sLeft <> "" Then
iLeft = sLeft
Else
iLeft = 0
End If

Si sRight & lt;> "" Ensuite,
iRight = sRight
Autre
iRight = 0
Fin si

Si bLeft Puis
iLeft = 1 / iLeft
tbResult.Text = iLeft
Autre
iRight = 1 / iRight
tbResult.Text = iRight
Fin si

Si iLeft & lt;> 0 Then
sLeft = iLeft
Autre
sLeft = ""
Fin si

Si iRight & lt;> 0 Then
sRight = iRight
Autre
sRight = ""
Fin si

End Sub

11 Ajouter du code pour gérer les boutons C et CE. C efface toutes les entrées de la calculatrice, alors que la CE ne supprime que le nombre actuellement en cours de saisie.

Private Sub btnC_Click ()

sLeft = ""
sRight = ""
sOperator = ""
tbResult.Text = "0"
bLeft = True

End Sub

Private Sub btnCE_Click ()

If bLeft Then
sLeft = ""
Else
sRight = ""
End If
tbResult.Text = "0"

End Sub

12 Comment faire une calculatrice avec Visual Basic


Exécutez votre programme de calculatrice et faire tout calcul que vous souhaitez. Cette calculatrice peut être facilement étendu pour gérer plusieurs opérations, des calculs plus complexes ou même d'être une calculatrice scientifique avec un peu de travail supplémentaire.

Conseils et avertissements

  • Si vous rencontrez des erreurs, vérifiez votre code ligne par ligne, en se concentrant sur les lignes que VB a appelé comme contenant des erreurs, et le comparer au code ci-dessus. Le code contenu dans cet article a été entièrement testé pour être exempt d'erreurs, de sorte que le copier fidèlement entraîner une program.If fonctionnelle vous utilisez une version antérieure de Visual Basic, vous pouvez rencontrer certains problèmes lorsque des modifications ont été apportées dans la langue entre les versions. Les versions précédentes de VB, par exemple, utilisés Math.sqrt () au lieu de Math.Sqr () pour effectuer une opération de racine carrée. Vérifiez les références pour votre version spécifique pour voir si des changements sont nécessaires.