Calculadora en access

Tengo un pequeño programita donde metí botones del 0 al 9 simulando un teclado numérico, y quisiera que al preionar cada botón me saliera el numero en conjunto, por ejemplo si presiono el botón "1" y el botón "9" que me aparezca el numero "19" en el campo así como también decimales 12.50 por ejemplo, no lo he podido hacer, ya que cada vez que presiono un botón borra el dato anterior.

6 respuestas

Respuesta
2
Supongamos que en el formulario, el cuadro de texto se llama Texto0 y los botones Comando1, Comando2, ...
En el evento click de cada botón debes escribir las siguientes lineas:
Texto0. Setfocus
Texto0.text=Texto0.text & "1"
Respuesta
1
A ver
Esto es más o menos así...
Por ejemplo en cualquiera de los botones
txtNUMERO.text = txtNUMERO.text & valorNuevoNumero
A ver lo que tienes que hacer es concatener... con &
El valor que estaba en el textBox con el nuevo valor
Si tienes algún problema con esto me avisas
Respuesta
1
El truco está en que cada vez que presionemos un botón, tiene que saber si el campo está vacío o no. El campo lo tratamos como si fueran cadenas de texto, esto es, el código que tienes que poner en cada botón es (numero es el cuadro de texto donde almacenas el número:
Private Sub Comandoboton1_Click()
On Error GoTo Err_Comandoboton1_Click
If IsNull(numero.Value) = True Then
numero.Value = 1
Else
numero.Value = numero.Value & "1"
End If
Exit_Comandoboton1_Click:
Exit Sub
Err_Comandoboton1_Click:
MsgBox Err.Description
Resume Exit_Comandoboton1_Click
End Sub
Si no tienes en cuenta el ISNULL, borrará lo anterior, y si pones '+' en vez de '&', sumará. Espero que con esto te sirva, en caso contrario te amplio la explicación.
Respuesta
1
Create un código donde asgines una variable, a la que se le asigne el resultado.
Supón que tus botones son B1, B2, B3 ... etc.
El cuadro texto donde va el resultado se llama "RESULTADO" (debe tener como valor predeterminado el 0).
Puedes probar este código y acomodarlo a tu programa (en el evento hacer click de cada botón).
Este es el ejemplo del código para el botón B1:
If IsNull(Me![RESULTADO]) Or Me![RESULTADO] = "" Then Me![RESULTADO] = 1 Else Me![RESULTADO] = Me![RESULTADO] & 1
El código para el botón B2 será:
If IsNull(Me![RESULTADO]) Or Me![RESULTADO] = "" Then Me![RESULTADO] = 2 Else Me![RESULTADO] = Me![RESULTADO] & 2
Y así sucesivamente para cada botón.
Si no te resulta avisame..
Polo-red
Respuesta

Aquí te dejo el cod, lop rimero ira al encabezado

Dim OPERACION As String
Dim A As Double
Dim B As Double

Private Sub AC_Click()
Me.Texto = ""
End Sub

Private Sub Comando17_Click()
A = Me.Texto
Me.Texto = ""
OPERACION = "*"
End Sub

Private Sub Comando7_Click()
If IsNull(Me![Texto]) Or Me![Texto] = "" Then Me![Texto] = 0 Else Me![Texto] = Me![Texto] & 0
End Sub

Private Sub Ctl__Click()
If IsNull(Me![Texto]) Or Me![Texto] = "" Then Me![Texto] = "." Else Me![Texto] = Me![Texto] & "."
End Sub

Private Sub Ctl1_Click()
If IsNull(Me![Texto]) Or Me![Texto] = "" Then Me![Texto] = 1 Else Me![Texto] = Me![Texto] & 1
End Sub

Private Sub Ctl2_Click()
If IsNull(Me![Texto]) Or Me![Texto] = "" Then Me![Texto] = 2 Else Me![Texto] = Me![Texto] & 2
End Sub

Private Sub Ctl3_Click()
If IsNull(Me![Texto]) Or Me![Texto] = "" Then Me![Texto] = 3 Else Me![Texto] = Me![Texto] & 3
End Sub

Private Sub Ctl4_Click()
If IsNull(Me![Texto]) Or Me![Texto] = "" Then Me![Texto] = 4 Else Me![Texto] = Me![Texto] & 4
End Sub

Private Sub Ctl5_Click()
If IsNull(Me![Texto]) Or Me![Texto] = "" Then Me![Texto] = 5 Else Me![Texto] = Me![Texto] & 5
End Sub

Private Sub Ctl6_Click()
If IsNull(Me![Texto]) Or Me![Texto] = "" Then Me![Texto] = 6 Else Me![Texto] = Me![Texto] & 6
End Sub

Private Sub Ctl7_Click()
If IsNull(Me![Texto]) Or Me![Texto] = "" Then Me![Texto] = 7 Else Me![Texto] = Me![Texto] & 7
End Sub

Private Sub Ctl8_Click()
If IsNull(Me![Texto]) Or Me![Texto] = "" Then Me![Texto] = 8 Else Me![Texto] = Me![Texto] & 8
End Sub

Private Sub Ctl9_Click()
If IsNull(Me![Texto]) Or Me![Texto] = "" Then Me![Texto] = 9 Else Me![Texto] = Me![Texto] & 9
End Sub

Private Sub DIV_Click()
A = Me.Texto
Me.Texto = ""
OPERACION = "/"
End Sub

Private Sub IGUAL_Click()
B = Me.Texto
Me.Texto = ""
If OPERACION = "+" Then
Me.Texto = A + B
ElseIf OPERACION = "-" Then
Me.Texto = A - B
ElseIf OPERACION = "*" Then
Me.Texto = A * B
ElseIf OPERACION = "/" Then
Me.Texto = A / B
End If
End Sub

Private Sub MAS_Click()
A = Me.Texto
Me.Texto = ""
OPERACION = "+"
End Sub

Private Sub RES_Click()
A = Me.Texto
Me.Texto = ""
OPERACION = "-"
End Sub

Recuerda cambiar el nombre de los botones o edita el codi, con el nombre que tu tengas

Respuesta
-1
Puedes intentar poner esto
Si por ejemplo el "19" o el "12.50" se ha de ver en un campo llamado 'ventana'
Entonces has de poner después del evento hacer click de cada botón (0,1,2,... 9) el siguiente código
VENTANA=VENTANA & BOTON1
Espero haberte arrojado un poco de luz en el asunto.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas