22/10/11

Minicalculadora elemental

clip_image002[4]

En este ejemplo se muestra una calculadora elemental que permite hacer las cuatro operaciones aritméticas (Figura 1.3). Los ficheros de este proyecto se pueden llamar minicalc.vbp y minicalc.frm. El usuario introduce los datos y clica sobre el botón correspondiente a la operación que desea realizar, apareciendo inmediatamente el resultado en la caja de texto de la derecha.

Controles a utilizar: Un formulario, 3 TextBox, 2 Etiquetas(Esta se crean para colocar el signo = y el de división de arriba) y 4 Command Button.
clip_image004[4]
La Tabla 1.3 muestra los objetos y las propiedades más importantes de este ejemplo.
clip_image006[4]
A continuación se muestra el código correspondiente a los procedimientos que gestionan los eventos de este ejemplo.
Option Explicit
Private Sub cmdDiv_Click()
txtResult.Text = Val(txtOper1.Text) / Val(txtOper2.Text)
lblOp.Caption = "/"
End Sub
Private Sub cmdProd_Click()
txtResult.Text = Val(txtOper1.Text) * Val(txtOper2.Text)
lblOp.Caption = "*"
End Sub
Private Sub cmdResta_Click()
txtResult.Text = Val(txtOper1.Text) - Val(txtOper2.Text)
lblOp.Caption = "-"
End Sub
Private Sub cmdSuma_Click()
txtResult.Text = Val(txtOper1.Text) + Val(txtOper2.Text)
lblOp.Caption = "+"
End Sub
En este ejemplo se ha utilizado repetidamente la función Val() de Visual Basic. Esta función convierte una serie de caracteres numéricos (un texto formado por
Etiquetas de Technorati:
cifras) en el número entero o de punto flotante correspondiente. Sin la llamada a la función Val() el operador + aplicado a cadenas de caracteres las concatena, y como resultado, por ejemplo, “3+4” daría “34”. No es lo mismo los caracteres “1” y “2” formando la cadena o string “12” que el número 12; la función val() convierte cadenas de caracteres numéricos –con los que no se pueden realizar operaciones aritméticas- en los números correspondientes –con los que sí se puede operar matemáticamente-. Visual Basic 6.0 transforma de modo automático números en cadenas de caracteres y viceversa, pero este es un caso en el que dicha transformación no funciona porque el operador “+” tiene sentido tanto con números como con cadenas.























No hay comentarios:

Publicar un comentario