Professional Documents
Culture Documents
N° de control: 15321051
-Análisis
-Desarrollo
1.- Seleccionaremos los botones del 0 al 9 y en la misma ventana donde se colocan las propiedades de cada elemento hay un símbolo en forma
de rayo, ese es la ventana “eventos” nos dirigimos al evento “click” y les daremos esta propiedad: btDigito_Click, de esta forma a todos los
botones seleccionados se les aplicará esta propiedad de evento, y automáticamente nos arrojará a la pestaña para ingresar el código, que es el
siguiente:
Private Sub btDigito_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btDigito9.Click,
btDigito8.Click, btDigito7.Click, btDigito6.Click, btDigito5.Click, btDigito4.Click, btDigito3.Click,
btDigito2.Click, btDigito1.Click, btDigito0.Click
Dim objButton As Button = CType(sender, Button)
If (ultimaEntrada <> Entrada.DIGITO) Then
If (objButton.Text = "0") Then Return
etPantalla.Text = ""
ultimaEntrada = Entrada.DIGITO
comaDecimal = False
End If
etPantalla.Text += objButton.Text
End Sub
Dorantes Jiménez José Enrique
N° de control: 15321051
2.- Si el programa se corre tal cual, nos arrojará muchos errores, y eso es porque debemos declarar variables miembro en la clase “Form1” y el
código es el siguiente:
Si se introduce un operador después de otro, por defecto el programa solo detectará el último operando, para eso declaramos las variables
numOperandos, que valdrá 1 cuando se haya introducido el primer operando, y 2 cuando se haya introducido el segundo operando,
operando1 y operando2 como miembros de la clase Form1
3.- A continuación en el formulario, selecionamos el botón de coma decimal, y de igual forma que en el paso 1, nos vamos a la ventana de
eventos y en el campo “Click” le daremos esta propiedad: btComaDec_Click, para que cuando nos arroje a la pestaña del código ingresemos lo
siguiente:
5.- Seguimos con el botón %, para ello lo seleccionaremos y lo asociaremos a un evento, este se llamará: btTantoPorCiento_Click, y en el método
al que nos arroja escribimos el siguiente código:
Private Sub btTantoPorCiento_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
btTantoPorCiento.Click
Dim resultado As Double
If (ultimaEntrada = Entrada.DIGITO) Then
resultado = operando1 * Double.Parse(etPantalla.Text) / 100
etPantalla.Text = resultado.ToString
btIgual.PerformClick()
btTantoPorCiento.Focus()
End If
End Sub
6.-Al pulsar el botón C significa que se quiere iniciar la calculadora. Entonces, lo que tiene que suceder es que en la pantalla aparezca “0,”. Para
ello seleccionaremos el botón C y le asociaremos un manejador de evento, este llevará por nombre: btIniciar_Click, colocando el siguiente
código:
7.- Para finalizar, el botón CE sirve para borrar el último número ingresado, entonces tendremos que seleccionar el botón CE y lo asociaremos a
un manejador de eventos, el cual llevará por nombre: btBorrarEntrada_Click, cuando nos mande a la pestaña de código en su respectivo
método, escribiremos el siguiente código:
Ahora probaremos el botón %, ingresaremos 55 y le restaremos su 46%, nos dará de resultado: 29.7
Dorantes Jiménez José Enrique
N° de control: 15321051
-Conclusión
Como se dijo en la introducción, el archivo del que se obtuvieron las instrucciones estuvo un tanto difíl de entender, ya que combinaba el código
principal con el código de diseño, y en ocaciones presentaba de forma salteada la información, pero esto me sirvió para comenzar a usar este
nuevo lenguaje, aunque no abarcó todos los métodos y que este era un programa sencillo.
-Bibliografía
Archivo “05-Aplicacion_calculadora_vb.pdf” de la carpeta “unidad 1” de la materia “Tópicos avanzados de programación”
-Anexo de código
Public Class Form1
Private Enum Entrada
NINGUNA
DIGITO
OPERADOR
CE
End Enum
Private ultimaEntrada As Entrada
Private comaDecimal As Boolean
Private operador As Char
Private numOperandos As Byte
Private operando1 As Double
Private operando2 As Double
Private Sub btDigito_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles
btDigito9.Click, btDigito8.Click, btDigito7.Click, btDigito6.Click, btDigito5.Click, btDigito4.Click,
btDigito3.Click, btDigito2.Click, btDigito1.Click, btDigito0.Click
Dim objButton As Button = CType(sender, Button)
If (ultimaEntrada <> Entrada.DIGITO) Then
If (objButton.Text = "0") Then Return
etPantalla.Text = ""
ultimaEntrada = Entrada.DIGITO
comaDecimal = False
End If
etPantalla.Text += objButton.Text
End Sub