Tecnología

Inicio

Cómo hacer una calculadora con Visual Basic

Microsoft Visual Basic es un lenguaje de programación basado en el lenguaje BASIC, originalmente desarrollado para facilitar la programación de aprender. Visual Basic toma los comandos conocidos de BASIC y añade herramientas e interfaces orientadas a objetos para el diseño WYSIWYG similar a las aplicaciones de Windows y los controles web, entre muchas otras mejoras. Uno de los proyectos de aprendizaje relativamente simple para Visual Basic es la creación de una calculadora de Windows.

Instrucciones

1 Cómo hacer una calculadora con Visual Basic

Abra Visual Basic 6, y seleccione "EXE estándar" en el menú nuevo proyecto. Verá un formulario en blanco aparece en la pantalla.

2 Cómo hacer una calculadora con Visual Basic


Cambiar el nombre de su proyecto y su formulario haciendo clic en "Project1" en el lado derecho de la pantalla, en el listado de proyectos, e introduciendo un nuevo nombre en la línea "Nombre" del cuadro de propiedades, que debe aparecer debajo de la lista de proyectos por defecto. Pulse la tecla "Enter" para aceptar el nuevo nombre. Haga lo mismo con su forma (a nombre de la forma sugerida es "CalculatorUI"), asegurándose de que introduzca un nombre similar en la propiedad "Caption", así, que va a cambiar el texto en la barra superior del formulario. Guardar el proyecto en una nueva carpeta en su computadora.

3 Cómo hacer una calculadora con Visual Basic


Añadir botones y un cuadro de texto al formulario. En primer lugar, añadir un cuadro de texto, que será donde aparecen los números introducidos en la calculadora, así como los resultados de los cálculos. Para ello, seleccione el botón Cuadro de texto de la barra de herramientas en la parte izquierda de la pantalla y, a continuación, arrastrando con el ratón el tamaño y la ubicación que desea para el cuadro de texto. Una vez que haya colocado el cuadro de texto se puede cambiar el tamaño y la ubicación arrastrando a otro lugar de la forma o arrastrando los controladores (los pequeños cuadrados) a lo largo de la frontera del cuadro de texto. Asegúrese de cambiar las siguientes líneas en la ventana Propiedades, con el cuadro de texto seleccionado: "(Nombre)" = tbResult, "alineación" = 1- justificación a la derecha, "Formato de datos" = (haga clic en el botón "..." para seleccionar) Número, "bloqueado" = Verdadero, y "Texto" = 0.

4 Cómo hacer una calculadora con Visual Basic


Seleccione el icono CommandButton en la barra de herramientas y crear el primer botón de la misma manera que ha creado el cuadro de texto para añadir botones. A modo de referencia, utilice la calculadora de Windows en la vista Estándar (Programas> Accesorios> Calculadora) como base para el diseño calculadora, dejando de lado la "MC", "MR", los botones "+" M "MS", y. En cada botón, cambiar las siguientes propiedades (utilizando el botón "+" como ejemplo): "(nombre)" = btnPlus, "Leyenda" = +. Haga lo mismo para el resto de los botones de la calculadora, y luego guardar su trabajo. Su forma debe ser similar al ejemplo que se muestra aquí.

5 Agregue el código. Tenga en cuenta que si sus botones y cuadro de texto no se nombran el mismo que el código que aparece aquí espera, tendrá que cambiar los nombres para que coincida con sus botones y cuadro de texto o cambie sus botones y cuadro de texto para que coincida con el código. En primer lugar tenemos que crear unas pocas variables para la entrada de la calculadora de procesamiento:

Dim sLeft como secuencia, sRight como secuencia, como secuencia sOperator
Dim iLeft As Double, iRight Como Doble, Doble A medida iResult
Dim bLeft As Boolean

Cada cálculo consiste en cuatro partes: un número a la izquierda del operador (sLeft, iLeft), un operador (sOperator), un número a la derecha del operador (sRight, iRight), y un resultado (iResult). Con el fin de realizar un seguimiento de si el usuario está introduciendo el número izquierda o la derecha, tenemos que crear una variable booleana, bLeft. Si bLeft es cierto, se introduce el lado izquierdo del cálculo; si bLeft es falsa, se introduce el lado derecho.

6 Inicializar la variable bLeft. Lo hacemos mediante la creación de un subprograma Form_Load, que se puede cualquiera de los tipos que se enumeran aquí o crear automáticamente haciendo doble clic en cualquier parte del formulario no cubierta por un botón o un cuadro de texto. Dentro de la función, tenemos que establecer bLeft en True, ya que el primer número introducido será la parte izquierda:

Private Sub Form_Load ()

bLeft = True

End Sub

7 Cómo hacer una calculadora con Visual Basic

Crear una subrutina que controlará el clic de cualquiera de los botones numéricos. Creamos esto como una subrutina porque usamos código idéntico para cada botón, y el uso de una subrutina significa no tener que repetir el mismo código de diez veces. Introduzca la siguiente debajo de la línea Sub End de la subrutina Form_Load:

Private Sub AddNumber (sNumber como secuencia)

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

End Sub

Como se puede ver, esta función toma un parámetro de cadena, sNumber, que contendrá el número que el usuario ha hecho clic en. Si bLeft es cierto, este número se añade a la cadena que representa introduce el número, sLeft, y el cuadro de texto, tbResult, se actualiza para mostrar el nuevo número. Si bLeft es falsa, la misma operación se realiza utilizando sRight lugar.

Por último, crear una función de evento Click para cada número que llama la subrutina AddNumber. Usted puede hacer esto fácilmente haciendo doble clic en cada botón numérico, que creará la estructura de subrutina para usted. A continuación, añadir la llamada a AddNumber, sustituyendo el número de citas con el número asociado con el botón. Para el botón de cero, el código se vería así:

Private Sub btn0_Click ()

AddNumber ("0")

End Sub

Del mismo modo, para el botón de uno, el código se vería así:

Private Sub btn1_Click ()

AddNumber ("1")

End Sub

8 Manejar los operadores: más, menos, los tiempos, y se dividen. Lo haremos como último paso, la creación de una subrutina que se llama en los eventos Click de los botones de operación. La subrutina se verá como la siguiente:

Private Sub AddOperator (sNewOperator como secuencia)

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

End Sub

Si bLeft es cierto, lo que significa que el usuario acaba de entrar en la parte izquierda del cálculo, esta subrutina establece la variable sOperator que hemos creado en el paso 5 para igualar el operador introduce, que se pasa a AddOperator como la cadena sNewOperator. El segundo paso es configurar bLeft en Falso, ya que la entrada de un operador significa que el usuario ha terminado de entrar en el lado izquierdo de la ecuación. Con el fin de manejar las entradas de esa cadena de múltiples operadores juntos, tal como 9

3 2 6 *, tenemos que comprobar también si bLeft es falsa, es decir, el usuario ha introducido un operador, donde nos estaban esperando un signo de igual. En primer lugar que llamamos el evento Click para el botón es igual a (que se describe en el paso siguiente), lo que lo hace el cálculo y establece tbResult al resultado de lo que ya se ha introducido. Luego sRight clara por lo que el usuario puede introducir el siguiente número, y establecer bLeft en False para que el programa sabe que estamos entrando en el lado derecho del cálculo siguiente.

Por último, añadir una llamada AddOperator al evento Click de cada botón del operador, utilizando el mismo método que se utilizó en el paso 7 para crear los eventos Click de los botones numéricos. El código para el botón, más se parecerá a esto:

Private Sub btnPlus_Click ()

AddOperator ("+")

End Sub

Del mismo modo, el código para el botón menos se verá así:

Private Sub btnMinus_Click ()

AddOperator ("-")

End Sub

9 Crear el evento Click para el botón de igual a igual, que es el código más complejo en este programa. Crear la estructura de subrutina como lo hizo para los otros botones, haciendo doble clic en el botón iguales en su forma. Su subrutina se verá así cuando se ha introducido el código:

Private Sub btnEquals_Click ()

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

Si sLeft & lt;> "" Y sRight & lt;> "" Y sOperator & lt;> "" Entonces
iLeft = sLeft
iRight = sRight

Seleccione la caja sOperator
Caso "+"
iResult = iLeft + iRight
Caso "-"
iResult = iLeft - iRight
Caso "/"
iResult = iLeft / iRight
Caso "*"
iResult = iLeft * iRight
End Select

tbResult.Text = iResult

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

End Sub

Las tres primeras líneas del código de verificación para ver si se han introducido ambos lados del cálculo junto con un operador. Si solamente se introducen el lado izquierdo y un operador, el valor de la parte izquierda se copia a la derecha, por lo que puede imitar el comportamiento calculadora estándar para el manejo de una entrada como 9 * =, lo que multiplica 9 por sí mismo para obtener un resultado de 81. el resto del código se ejecutará sólo si la izquierda, derecha, y se introducen operador, y empieza a cabo por la copia de las cadenas de números en nuestras variables mecanografiados a doble iLeft y iRight, que pueden hacer los cálculos reales. La instrucción Select Case nos permite ejecutar código diferente dependiendo de que se introdujo el operador, y lleva a cabo el cálculo real, colocando el resultado en iResult. Por último, actualizamos el cuadro de texto con el resultado, copiamos el resultado en sLeft, restablezca sRight, y fijamos bLeft = True. Estas últimas líneas nos permiten tener en el resultado del cálculo y la usamos para realizar otro cálculo.

10 Manejar los tres últimos botones de operación: sqrt,%, y 1 / x. Para el evento Click del botón de raíz cuadrada, su código se verá así:

Private Sub btnSqrt_Click ()

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

Si sRight & lt;> "" Entonces
iRight = sRight
Más
iRight = 0
Terminara si

Si bLeft Entonces
iLeft = Math.Sqr (iLeft)
tbResult.Text = iLeft
Más
iRight = Math.Sqr (iLeft)
tbResult.Text = iRight
Terminara si

Si iLeft & lt;> 0 Then
sLeft = iLeft
Más
sLeft = ""
Terminara si

Si iRight & lt;> 0 Then
sRight = iRight
Más
sRight = ""
Terminara si

End Sub

Las primeras 11 líneas de código asegurarse de que si no tenemos un valor introducido para ambos lados de la ecuación, sustituir cero en lugar de tratar de copiar una cadena vacía en iLeft o iRight, lo que generará un error. Las líneas centrales realizan la función de raíz cuadrada en la parte actual del cálculo, ya sea izquierda o derecha. Por último, revocamos las comprobaciones que hicimos en el principio para que se copia un cero como una cadena vacía de nuevo en sLeft y sRight.

Para el botón por ciento, el código es similar, con una excepción: la operación por ciento sólo se puede realizar si tanto la izquierda como se introducen los lados derecho.

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
Más
sRight = ""
Terminara si
Terminara si

End Sub

Por último, el 1 / x, o fracción, de eventos de clic, que es muy similar al código de seguridad:

Private Sub btnFraction_Click ()

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

Si sRight & lt;> "" Entonces
iRight = sRight
Más
iRight = 0
Terminara si

Si bLeft Entonces
iLeft = 1 / iLeft
tbResult.Text = iLeft
Más
iRight = 1 / iRight
tbResult.Text = iRight
Terminara si

Si iLeft & lt;> 0 Then
sLeft = iLeft
Más
sLeft = ""
Terminara si

Si iRight & lt;> 0 Then
sRight = iRight
Más
sRight = ""
Terminara si

End Sub

11 Añadir código para manejar los botones C y CE. C borra todas las entradas a la calculadora, mientras que la CE sólo borra la actualidad se introduce el número.

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 Cómo hacer una calculadora con Visual Basic


Ejecutar el programa de la calculadora y hacer cualquier cálculo que desea. Esta calculadora se puede ampliar fácilmente para manejar más operaciones, cálculos más complejos o incluso para ser una calculadora científica con un poco de trabajo extra.

Consejos y advertencias

  • Si encuentra errores, comprobar su código línea por línea, centrándose en las líneas que VB ha llamado a salir ya que los errores que contienen, y compararlo con el código de seguridad. El código contenido en este artículo ha sido completamente probado ser libre de errores, por lo que la copia fielmente dará lugar a una program.If funcional que está utilizando una versión anterior de Visual Basic, puede encontrarse con algunos temas en los que se han realizado cambios en el lenguaje entre versiones. Las versiones anteriores de VB, por ejemplo, utilizan Math.Sqrt () en lugar de Math.Sqr () para realizar una operación de raíz cuadrada. Compruebe las referencias para su versión específica para ver si los cambios son necesarios.