Título: codigo de dos botones de una calculadora
Publicado por: lipman en 5 Noviembre 2006, 01:41 am
Bueno, por ahora solo tengo de dos botones, y creo que algo de ellos lo tengo mal, aquí les dejo el código del botón de borrar: Private Sub Borrar_Click() PrimerOperando.Text = «» SegundoOperando.Text = «» MostrarResultado.Caption = 0 PrimerOperando.SetFocus End Sub Aquí el del botón calcular Private Sub Calcular_Click() Dim Operador As String If PrimerOperando.Text = "Or SegundoOperando.Text= " Then MsgBox ("Falta algún operando") Exit Sub End If If Sumar.Value = True Then MostrarResultado.Caption = Val(PrimerOperando.Text) + "" Val (SegundoOperando.Text) If Restar.Value = True Then MostrarResultado.Caption = Val(PrimerOperando.Text) - "" Val (SegundoOperando.Text) If Multiplicar.Value = True Then MostrarResultado.Caption = Val(PrimerOperando.Text) Val (SegundoOperando.Text) If Dividir.Value = True Then If Val(SegundoOperando.Text) = 0 Then MsgBox ("No se puede dividir entre 0") Exit Sub End If MostrarResultado.Caption = Val(PrimerOperando.Text) / Val(SegundoOperando.Text) End If If Añadir.Text = "Añadir a la lista" Then If Operacion.Value = True Then If Sumar.Value = True Then Operador = "+" If Restar.Value = True Then Operador = "-" If Multiplicar.Value = True Then Operador = "*" If Dividir.Value = True Then Operador = "/" ListaOperaciones.AddItem PrimerOperando.Text & Operador & SegundoOperando.Text & "=" & MostrarResultado.Caption Else ListaOperaciones.AddItem MostrarResultado.Caption End If End If
End Sub ¿Por que se que tengo algo mal? Bueno, al ser la primera vez que lo hago, al no funcionarme nada y al no dejarme compilarlo en exe, pues algo falla ^^ Me gustaria saber que tengo mal y por que. Gracias Les recuerdo que estoy empezando en esto ^^ Saludos y gracias
Título: Re: codigo de dos botones de una calculadora
Publicado por: Snort en 5 Noviembre 2006, 11:13 am
Private Sub Calcular_Click() Dim Operador As String If PrimerOperando.Text = 0 or SegundoOperando.Text= 0 Then MsgBox ("Falta algún operando") Exit Sub End If If Sumar.Value = True Then MostrarResultado.Caption = Val(PrimerOperando.Text) + Val (SegundoOperando.Text) If Restar.Value = True Then MostrarResultado.Caption = Val(PrimerOperando.Text) - Val (SegundoOperando.Text) If Multiplicar.Value = True Then MostrarResultado.Caption = Val(PrimerOperando.Text) * Val (SegundoOperando.Text) If Dividir.Value = True Then If Val(SegundoOperando.Text) = 0 Then MsgBox ("No se puede dividir entre 0") else MostrarResultado.Caption = Val(PrimerOperando.Text) / Val (SegundoOperando.Text) End If If Añadir.Text = "Añadir a la lista" Then If Operacion.Value = True Then If Sumar.Value = True Then Operador = "+" If Restar.Value = True Then Operador = "-" If Multiplicar.Value = True Then Operador = "*" If Dividir.Value = True Then Operador = "/" ListaOperaciones.AddItem PrimerOperando.Text & Operador & SegundoOperando.Text & "=" & MostrarResultado.Caption Else ListaOperaciones.AddItem MostrarResultado.Caption End If End If End Sub Mira a ver si te funciona asi el codigo, esqe para ser una calculadora tiene un puñao de comandos, de objetos y cajas de texto qe no hacen falta. Si no te funciona el codigo postea los nombres de los onjetos diciendo lo qe son y ya te paso un codigo qe funcione, por ejemplo.........PrimerOperador - text Porqe esqe tienes mucho mareo de objetos. Saludos
Título: Re: codigo de dos botones de una calculadora
Publicado por: lipman en 5 Noviembre 2006, 11:38 am
Private Sub Calcular_Click() Dim Operador As String If PrimerOperando.Text = 0 or SegundoOperando.Text= 0 Then MsgBox ("Falta algún operando") Exit Sub End If [*]If Sumar.Value = True Then MostrarResultado.Caption = Val(PrimerOperando.Text) +[/*] Val (SegundoOperando.Text) [*]If Restar.Value = True Then MostrarResultado.Caption = Val(PrimerOperando.Text) - [/*] Val (SegundoOperando.Text) If Multiplicar.Value = True Then [*]MostrarResultado.Caption = Val(PrimerOperando.Text) *[/*] Val (SegundoOperando.Text) If Dividir.Value = True Then If Val(SegundoOperando.Text) = 0 Then MsgBox ("No se puede dividir entre 0") else [*]MostrarResultado.Caption = Val(PrimerOperando.Text) /[/*] Val (SegundoOperando.Text) End If If Añadir.Text = "Añadir a la lista" Then If Operacion.Value = True Then If Sumar.Value = True Then Operador = "+" If Restar.Value = True Then Operador = "-" If Multiplicar.Value = True Then Operador = "*" If Dividir.Value = True Then Operador = "/" ListaOperaciones.AddItem PrimerOperando.Text & Operador & SegundoOperando.Text & "=" & MostrarResultado.Caption Else ListaOperaciones.AddItem MostrarResultado.Caption End If End If End Sub Las lineas que he puesto entre [ *] y [/*] significa que me salen en rojo. Bueno, es que estoy siguiendo un tutorial, y supongo que la calculadora "ideal" no tiene tantas cosas, pero como es un tutorial, supongo que pretende enseñarme varias cosas dentro de un mismo objeto. Bueno, aquí tienes la apariencia de la calculadora con sus "(Nombre)" (http://img296.imageshack.us/img296/7769/asdqd1.png) Empezaré de arriba a abajo: Nombre del form: Form1 Nombre de calculadora: Label1 Nombre de Primer Operando: Label2 Nombre de Segundo Operando: Label3 Nombre de Resultado: Label4 Nombre de la caja de abajo de primer operando: PrimerOperando Nombre de la caja de abajo de segundo operando: SegundoOperando Nombre del label de abajo del resultado: MostrarResultado Nombre del OptionBox de sumar: Sumar (Lo mismo con los 3 OptionBox de abajo: Restar, Multiplicar y Dividir) Nombre del igual: Image1 Nombre de borrar: Borrar Nombre de Calcular: Calcular Nombre de lista de operaciones: Label5 Nombre del listbox de debajo de la lista de operaciones: ListaOperaciones Nombre del frame de su derecha: Frame1 Nombre de 1er optionbuton del Frame1: Resultado Nombre del 2do optionbuton del Frame1: Operacion Nombre de operaciones con la lista: Label6 Nombre del combobox de abajo de operaciones con la lista: Añadir Creo que no me dejo nada ^^. Muchas gracias, y adios
Título: Re: codigo de dos botones de una calculadora
Publicado por: Snort en 5 Noviembre 2006, 12:47 pm
Vamos a ver, lo primero es qe eso de option box no lo habia oido en la vida, e buskao en google un pokillo i komo no abia kasi nada por no decir nada de info decente, te los he sustituido por optionbuttons (Mas sencillo), y el codigo ya funciona, tenias varios errores, por ejemplo en la suma ponias primervalor + "" + segundo valor, y no se pueden sumar nunmeros con "", aparte de que no tiene sentido, luego en la division se rallaba porqe primero miras si divide por cero, y luego operas y habian puestos 4 bloqes if y 3 end if independientes, por tanto faltaba uno i no hacia nada de todas formas. Hasta aqi es para operar, luego la otra parte del codigo supongo qe sera para crear un log de las operaciones qe vas haciendo, no? Esqe el texto "Añadir" no se cual es (If Añadir.Text = "Añadir a la lista" Then), Asi qe el codigo para qe tambien se vayan guardando las operaciones es: Dim Operador As String Private Sub Borrar_Click() primeroperando.Text = «» segundooperando.Text = «» MostrarResultado.Caption = 0 primeroperando.SetFocus End Sub Private Sub Calcular_Click() If primeroperando.Text = "" Or segundooperando.Text = "" Then MsgBox ("Falta algún operando") End If If Operador = " + " Then MostrarResultado.Caption = Val(primeroperando.Text) + Val(segundooperando.Text) End If If Operador = " - " Then MostrarResultado.Caption = Val(primeroperando.Text) - Val(segundooperando.Text) End If If Operador = " x " Then MostrarResultado.Caption = Val(primeroperando.Text) * Val(segundooperando.Text) End If If Operador = " / " Then If Val(segundooperando.Text) = 0 Then MsgBox ("No se puede dividir entre 0") Else MostrarResultado.Caption = Val(primeroperando.Text) / Val(segundooperando.Text) End If End If ListaOperaciones.AddItem primeroperando.Text & Operador & segundooperando.Text & "=" & MostrarResultado.Caption End Sub Private Sub optDividir_Click() Operador = " / " End Sub Private Sub optMultiplicar_Click() Operador = " * " End Sub Private Sub optRestar_Click() Operador = " - " End Sub Private Sub optSumar_Click() Operador = " + " End Sub Esto ultimo de optNoseke_click son los option button qe como no he encontrao los optionbox qe has dicho, pues te los he sustituido. Asi, cada vex qe haces click en una opcion cambia la variable operador, y cuando va a calcular, mira la variable operador, y depende de su valor hace una cosa o otra. Por cierto los espacios qe tienen los operadores delante i detras son para qe se ven bonitos luego en la lista Saludos, i espero averte ayudao, porqe los option box man costao su tiempo... xD
Título: Re: codigo de dos botones de una calculadora
Publicado por: Jareth en 5 Noviembre 2006, 12:50 pm
Private Sub Command1_Click()
Dim Operador As String If Primeroperando.Text = "" Or Segundooperando.Text = "" Then MsgBox ("Falta algún operando") Exit Sub End If If Sumar.Value = True Then mostrarresultado.Caption = Val(Primeroperando.Text) + Val(Segundooperando.Text) If Restar.Value = True Then mostrarresultado.Caption = Val(Primeroperando.Text) - Val(Segundooperando.Text) If Multiplicar.Value = True Then mostrarresultado.Caption = Val(Primeroperando.Text) * Val(Segundooperando.Text) If Dividir.Value = True Then If Val(Segundooperando.Text) = 0 Then MsgBox ("No se puede dividir entre 0") Else mostrarresultado.Caption = Val(Primeroperando.Text) / Val(Segundooperando.Text) End If
End If End If End Sub
Asi te funcionara,por cierto eso de If Primeroperando.text=0 or segundoperando.text=0 then msgbox ("faltan numeros") esta mal,te refieres asi está vacio porque se puede multiplicar por 0 y sumar.
|