les planteo el problema
utiliza arreglos de objetos para diseñar un sistema para un videoclub en el que se rentan DVD,VHS,VIDEOJUEGOS, los dvd lo rentan a $20 por dia los vhs $10 por dia y los videojuegos $30 por dia
en el form tengo dos botones agregar y eliminar cuando yo le doy clic en el boton agregar me agrega los datos en el arreglo y me los muestra en uno listbox y el total me lo muestra en un label y conforme se vaya rellenando el arreglo se tiene que ir acumulando el total
por ejemplo
escojo un dvd por 2 dias=20 esto se tiene que imprimir en el label
escojo otro un vhs por 3 dias =30 pero no se debe imprimir el 30 si no que la suma de 20 mas 30 tiene que ir acumulando alguien me podria ayudar porfavor
aqui les dejo el codigo
Código C#:
Ver original
using System; using System.Collections.Generic; using System.Windows.Forms; using System.Linq; using System.Text; namespace arreglodeobjectos { class video_club { int total; string formato; string titulo; int dias; public string Form { set { formato = value; } get { return formato; } } public string Titu { set { titulo = value; } get { return titulo; } } public int Dia { set { dias = value; } get { return dias; } } public void barra1(ProgressBar barra,Label texto) { for (int i = 0; i <= 100; i += 1) { barra.Value = i; texto.Text = "Agregando datos en el arreglo Espere...." + i + "%"; Application.DoEvents(); System.Threading.Thread.Sleep(100); } if (barra.Value == 100 - 1) { texto.Text = "Datos Agregados Correctamente"; } else { barra.Value = 0; texto.Text = ""; } } } public class arreglo { int to; video_club[]almacena=new video_club[11]; int registro=0; public void Agregar(string formato, string tit, int dia, ListBox lista1, ListBox lista2, ListBox lista3,ref int s) { if(registro <=10) { s = s + to; //almacenar datos en el arreglo almacena[registro] = new video_club(); almacena[registro].Form=formato; almacena[registro].Titu=tit; almacena[registro].Dia=dia; // Realizar los calculos if (almacena[registro].Form == "DVD") to = almacena[registro].Dia * 20; else if (almacena[registro].Form == "VHS") to = almacena[registro].Dia * 10; else to=almacena[registro].Dia*30; s=s+to; //imprimir datos en los listbox lista1.Items.Add(almacena[registro].Form); lista2.Items.Add(almacena[registro].Titu); lista3.Items.Add(almacena[registro].Dia); registro++; } else MessageBox.Show("el arreglo esta lleno"); } //eliminar datos del arreglo public void eliminar(ListBox lista1,ListBox lista2, ListBox lista3) { switch (lista1.SelectedIndex) { case 0: lista1.Items.Remove(almacena); lista1.Items.RemoveAt(0); lista2.Items.Remove(almacena); lista2.Items.RemoveAt(0); lista3.Items.RemoveAt(0); lista3.Items.Remove(almacena); break; case 1: lista1.Items.Remove(1); lista1.Items.Remove(almacena); lista1.Items.RemoveAt(1); lista2.Items.Remove(almacena); lista2.Items.RemoveAt(1); lista3.Items.RemoveAt(1); lista3.Items.Remove(almacena); break; case 2: lista1.Items.Remove(2); lista1.Items.Remove(almacena); lista1.Items.RemoveAt(2); lista2.Items.Remove(almacena); lista2.Items.RemoveAt(2); lista3.Items.RemoveAt(2); lista3.Items.Remove(almacena); break; case 3: lista1.Items.Remove(3); lista1.Items.Remove(almacena); lista1.Items.RemoveAt(3); lista2.Items.Remove(almacena); lista2.Items.RemoveAt(3); lista3.Items.RemoveAt(3); lista3.Items.Remove(almacena); break; } switch (lista2.SelectedIndex) { case 0: lista1.Items.Remove(almacena); lista1.Items.RemoveAt(0); lista2.Items.Remove(almacena); lista2.Items.RemoveAt(0); lista3.Items.RemoveAt(0); lista3.Items.Remove(almacena); break; case 1: lista1.Items.Remove(almacena); lista1.Items.RemoveAt(1); lista2.Items.Remove(almacena); lista2.Items.RemoveAt(1); lista3.Items.RemoveAt(1); lista3.Items.Remove(almacena); break; case 2: lista1.Items.Remove(almacena); lista1.Items.RemoveAt(2); lista2.Items.Remove(almacena); lista2.Items.RemoveAt(2); lista3.Items.RemoveAt(2); lista3.Items.Remove(almacena); break; case 3: lista1.Items.Remove(almacena); lista1.Items.RemoveAt(0); lista2.Items.Remove(almacena); lista2.Items.RemoveAt(0); lista3.Items.RemoveAt(0); lista3.Items.Remove(almacena); break; } } } }
en el boton eliminar cuando seleccione un dato en el listbox y se haga clic tiene que eliminar el dato del arreglo del listbox y ademas tiene que restar el total dependiendo del numero de dias y el formato que este tenga.
espero su ayuda
gracias de antemano