Foros del Web » Programación para mayores de 30 ;) » .NET »

calculadora en c# windows forms

Estas en el tema de calculadora en c# windows forms en el foro de .NET en Foros del Web. Muy buenas y gracias por leerme. Tengo hecha una calculadora , funciona perfectamente, tiene retroceso, hace logarimos y etc, pero sólo funciona para dos números, ...
  #1 (permalink)  
Antiguo 21/04/2013, 04:34
jcd
 
Fecha de Ingreso: febrero-2013
Mensajes: 77
Antigüedad: 11 años, 2 meses
Puntos: 0
calculadora en c# windows forms

Muy buenas y gracias por leerme.

Tengo hecha una calculadora , funciona perfectamente, tiene retroceso, hace logarimos y etc, pero sólo funciona para dos números, y quiero que funcione para tantos números como yo quiera.

es decir, el funcionamiento es este.

al pulsar un botón numerico, la pantalla recoge la salida del evento on_click, e imprime por pantalla el número

al pulsar un botón de operación que requiera un segundo número, suma, resta,...etc, el evento onclick de ese botón me guarda el número impreso en pantalla y da un valor a la operación, por ejemplo llamada substraer

Código c#:
Ver original
  1. private void bsubtract_Click(object sender, EventArgs e)
  2.         {
  3.             this.operation = "substraer";
  4.             detecta = true;
  5.  
  6.             num1 = Double.Parse(pantalla.Text);
  7.         }

Ahora bien, cuando hago esto, el primer número queda guardado en la variable num1.

ahora pulso otro botón númerico, y al pulsar igual, me almacena el segundo número impreso en pantalla en otra variable num2, para el caso de substraer es:

Código c#:
Ver original
  1. private void bigual_Click(object sender, EventArgs e)
  2.         {
  3.          
  4.             if (operation == "substraer")
  5.             {
  6.                 this.num2 = double.Parse(pantalla.Text);
  7.                 this.resultado = num1 - num2;
  8.                 pantalla.Text = resultado.ToString();
  9.             }
  10.           }

funciona perfectamente, el problema es que sólo vale para dos números, he intentado meter un vector como argumento pero resulta que los métodos
creados automáticamente al iniciar el evento on_click no aceptan más parámetros que los que vienen por defecto.

¿alguien podría darme alguna indicación de cómo conseguir que se pueda hacer esto?

4+6+7+8+1-2-3+7 y me de el resultado cuando pulse igual?

gracias
  #2 (permalink)  
Antiguo 22/04/2013, 00:51
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: calculadora en c# windows forms

Lo ideal es que este tema lo continuases en el otro que abriste, así la gente sabría de donde viene. Como ya te comenté allí (creo que en una de mis primeras respuestas), lo ideal sería que fueses calculando los resultados conforme le dan al botón de "operación" y no al pulsar el "igual".
__________________
Aviso: No se resuelven dudas por MP!
  #3 (permalink)  
Antiguo 22/04/2013, 07:19
jcd
 
Fecha de Ingreso: febrero-2013
Mensajes: 77
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: calculadora en c# windows forms

meterías una lista?
  #4 (permalink)  
Antiguo 22/04/2013, 07:45
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: calculadora en c# windows forms

Cita:
Iniciado por jcd Ver Mensaje
meterías una lista?
Ya te has planteado como solucionarias el tema usando la lista? De que te sirve tener todos los números? Como ya te suguerí en tu otro hilo, creo que tendrías que ir calculando el resultado a cada operación.
__________________
Aviso: No se resuelven dudas por MP!
  #5 (permalink)  
Antiguo 22/04/2013, 08:25
jcd
 
Fecha de Ingreso: febrero-2013
Mensajes: 77
Antigüedad: 11 años, 2 meses
Puntos: 0
Respuesta: calculadora en c# windows forms

ok.

creo que ya lo tengo.

lo que no me gusta es no poder meter parámetros en los métodos que se crean con onclick, siempre me gustó meter arrays pero con c#.net + windows forms no se me ocurre nada
  #6 (permalink)  
Antiguo 22/04/2013, 08:37
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: calculadora en c# windows forms

Cita:
Iniciado por jcd Ver Mensaje
ok.

creo que ya lo tengo.

lo que no me gusta es no poder meter parámetros en los métodos que se crean con onclick, siempre me gustó meter arrays pero con c#.net + windows forms no se me ocurre nada
Puedes seguir usando arrays, pero no en las funciones onClick. Esas funciones pertenecen a la capa de presentación y son la interación entre la ventana y tu programa. Para que ambos se puedan entender han de usar unas funciones con unos parámetros en concreto, por eso no se pueden alterar. Lo que si puedes hacer es llamar desde la función onClick a cualquier otra función y pasarle un array.
__________________
Aviso: No se resuelven dudas por MP!

Etiquetas: c#
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:58.