Exemplo n.º 1
0
        //Si el precio total del cajon supera los 55 pesos, se disparará el evento EventoPrecio.
        //Diseñarlo (de acuerdo a las convenciones vistas) en la clase cajon.
        //Crear el manejador necesario para que se imprima en un archivo de texto:
        //la fecha (con hora, minutos y segundos) y el total del precio del cajón en un nuevo renglón.(en el escritorio del cliente)
        private void btnPunto5_Click(object sender, EventArgs e)
        {
            //Asociar manejador de eventos y crearlo en la clase Manejadora (de instancia).
            Manejadora <Banana> manejadora = new Manejadora <Banana>();

            this.c_bananas.eventoPrecio += new PrecioExcedido(manejadora.Manejador);
            this.c_bananas += new Banana("verde", 2, "argentina");
            this.c_bananas += new Banana("amarilla", 4, "ecuador");
        }
Exemplo n.º 2
0
 public static bool ImprimirTicket(this Cajon <Platano> c, string path)
 {
     try
     {
         StreamWriter sw = new StreamWriter(path);
         sw.Write(DateTime.Now + " Precio total: " + c.PrecioTotal);
         sw.Close();
         return(true);
     }
     catch (Exception) { return(false); }
 }
Exemplo n.º 3
0
 public bool Deserializar()
 {
     try
     {
         XmlSerializer xml = new XmlSerializer(typeof(Cajon <T>));
         StreamReader  sr  = new StreamReader(AppDomain.CurrentDomain.BaseDirectory + this.RutaArchivo);
         Cajon <T>     m   = (Cajon <T>)xml.Deserialize(sr);
         sr.Close();
         return(true);
     }
     catch (Exception) { return(false); }
 }
Exemplo n.º 4
0
 //Si se intenta agregar frutas al cajón y se supera la cantidad máxima, se lanzará un CajonLlenoException,
 //cuyo mensaje explicará lo sucedido.
 private void btnPunto4_Click(object sender, EventArgs e)
 {
     //implementar estructura de manejo de excepciones
     try
     {
         this.c_duraznos += this._durazno;
     }
     catch (CajonLlenoException exc)
     {
         MessageBox.Show(exc.Message);
     }
 }
Exemplo n.º 5
0
        //Crear la clase Cajon<T>
        //atributos: _capacidad:int, _elementos:List<T> y _precioUnitario:double (todos protegidos)
        //Propiedades
        //Elementos:(sólo lectura) expone al atributo de tipo List<T>.
        //PrecioTotal:(sólo lectura) retorna el precio total del cajón (precio * cantidad de elementos).
        //Constructor
        //Cajon(), Cajon(int), Cajon(double, int);
        //El por default: es el único que se encargará de inicializar la lista.
        //Métodos
        //ToString: Mostrará en formato de tipo string, la capacidad, la cantidad total de elementos, el precio total
        //y el listado de todos los elementos contenidos en el cajón. Reutilizar código.
        //Sobrecarga de operador
        //(+) Será el encargado de agregar elementos al cajón, siempre y cuando no supere la capacidad del mismo.
        private void btnPunto2_Click(object sender, EventArgs e)
        {
            this.c_manzanas = new Cajon <Manzana>(1.58, 3);
            this.c_bananas  = new Cajon <Banana>(15.96, 4);
            this.c_duraznos = new Cajon <Durazno>(21.5, 1);

            this.c_manzanas += new Manzana("roja", 1, "neuquen");
            this.c_manzanas += this._manzana;
            this.c_manzanas += new Manzana("amarilla", 3, "san juan");

            this.c_bananas += new Banana("verde", 3, "brasil");
            this.c_bananas += this._banana;

            this.c_duraznos += this._durazno;

            MessageBox.Show(this.c_manzanas.ToString());
            MessageBox.Show(this.c_bananas.ToString());
            MessageBox.Show(this.c_duraznos.ToString());
        }