miércoles, 4 de noviembre de 2015

Concentrese Con Sonidos en C#




Este proyecto tiene un concentrese usando sonidos de animales, el cual es identificar dos sonidos en casillas distintas, si el usuario reproduce dos veces seguidas el mismo sonido, en las casillas que dio clic se muestra la imagen del animal que hace dicho sonido.

se tiene que adivinar un total de 10 animales diferentes y la aplicación usa una base de datos en MySql donde lleva el listado de los jugadores que pudieron terminar el juego y el tiempo que tardaron en hacerlo, estos datos se pueden visualizar en uno de los módulos de la aplicación. 

La Logica del programa es muy simple y decidimos aplicar una programación semi estructurada, ya que solamente queríamos mostrar algunas funciones como lo era conectarnos a una base de datos de MySql realizar algunas transacciones, y cositas simples.

El programa es una combinación de varios sub programas simples, los cuales son:

Un cronometro sencillo usando un Timer.
Un reproductor de audio con sonidos limitados, el cual solo sirve para iniciar la reproducción de audio.
Un visualizador de datos almacenados en MySql
Un Visualizador de imágenes por medio de un botón.

La función de cronometrar el tiempo desde que se da Juego nuevo se limita a una seccion muy pequeña de código la cual mostrare a continuación:

private void timer1_Tick(object sender, EventArgs e)
        {
            segundos++;
            if (segundos == 60) {
                minutos++;
                segundos = 0;
            }
            l3.Text = minutos + " : " + segundos;
        }
en este método programamos el timer con dos variables de tipo entero(minutos y segundos), las cuales se actualizan en tiempo real y modifican un label el cual se llama l3, el cual permite al usuario poder visualizar el tiempo que transcurre desde el inicio del juego hasta que logra encontrar todos los animales.

para iniciar la marcha de este timer utilizamos la linea :

timer1.Enabled = true;

en caso de que deseemos detener el timer podemos usar la linea
timer1.Stop(); 


El reproductor de audio, se hace con las siguientes lineas

SoundPlayer player4 = new SoundPlayer(global::Concentrese.Properties.Resources.gato);
                        player4.Play();
algo que debemos tener presente es que necesitamos incluir la librería using System.Media; para poder usar este reproductor sencillo, en la parte que dice gato, ponemos el nombre del sonido que deseamos reproducir, dicho audio debe estar agregado a los recursos del proyecto.

Una de las partes mas complejas de la aplicación es la parte donde se cargan los datos a la tabla,
Clic Aqui para ver ejemplo sencillo de como hacerlo

en nuestro caso usamos otra forma aunque muy similar a la que se usa en el link anterior. la sección que maneja esta parte es el formulario de nombre lista, y la clase Conexion en el proyecto visualizando podemos comparar y ver las diferencias entre el ejemplo del link y nuestro proyecto.

y por ultimo pero no menos importante el visualizador de imágenes por medio de un botón.

el código para realizar esta accion es muy sencillo pero en caso de manejar una cantidad grande de botones se tiene que tener presente el Identidicador de cada boton (Tag) para asi poder tomar la instancia en ejecución del botón y modificar.

Linea para obtener instancia en ejecucion de cualquier boton con su ID;
Button boton1 = (Button)this.Controls.Find("button" + Int32.Parse("AQUI ID DEL BOTON"), false)[0];

Linea de Código para visualizar imagen en un botón.

boton1.BackgroundImage = global::Concentrese.Properties.Resources.CANARIO__1;


Descargar Proyecto (Clic Aqui)

No hay comentarios:

Publicar un comentario