estoy haciendo mi proyecto final que es un tragamonedas, y estoy en el cambio de imagen del juego, El Profesor me pidio que no Usara un Timer que usara un BackGroundWorker, entonces programe lo siguiente para el cambio de imagen del juego:
Código
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) { int i = 1; while ( i > 0 ) { imagen1 = objeto.Next(0, 3); n1 = Convert.ToString(imagen1); if (imagen1 == 0) { pictureBox1.Image = Traga_monedas_frutas.Properties.Resources.Banana; } else if (imagen1 == 1) { pictureBox1.Image = Traga_monedas_frutas.Properties.Resources.Manzana; } else if (imagen1 == 2) { pictureBox1.Image = Traga_monedas_frutas.Properties.Resources.Pina; } else if (imagen1 == 3) { pictureBox1.Image = Traga_monedas_frutas.Properties.Resources.Cereza; } i++; } }
inicio el subproceso con:
Código
private void button1_Click(object sender, EventArgs e) { backgroundWorker1.RunWorkerAsync(); }
lo detengo dando clic en un boton, ahora la logica del juego es que este cambiando constantemente la imagen de los picturebox, son 4 picture box que estoy usando, y por supuesto tengo 4 BackGroundWorker, uno para cada imagen.
el error que me esta generando es el siguiente:
Código
El Codigo de usuario no encontro InvalidOperationException
da en la linea:
Código
pictureBox1.Image = Traga_monedas_frutas.Properties.Resources.Banana;
que estoy haciendo mal?
gracias por su atencion.