jueves, 27 de abril de 2017

[CÓDIGO DOCUMENTADO] Semáforo en Visual C#

El día de hoy les traemos nuestro primer programa explicado en esta sección titulada "[CÓDIGO DOCUMENTADO]" de un Semáforo en Visual Studio en nuestro lenguaje favorito: C#

Form en reposo

Form en uso


Empecemos:






Ahora mostrado en texto en caso de que no sean legible las imágenes:


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Semaforo
{
    public partial class semaforo : Form
    {
        int i = 0;   //Variable que utilizaremos para el uso del Switch Case.
        public semaforo()
        {
            InitializeComponent();
        }
         
        private void Iniciar_Click(object sender, EventArgs e)
        {   //En el evento click pondremos las siguientes acciones a realizar.
            timer1.Start();   //Declaramos que el timer se encienda.
            detener.Enabled = true;  //Declaramos que el boton "Detener" este habilitado.
            Apagar.Enabled = true;  //Declaramos que el boton "Apagar" este habilitado.
            Iniciar.Enabled = false;  //Declaramos que el boton "Iniciar" este deshabilitado.
        }

        private void pictureBox1_Click(object sender, EventArgs e)
        {  //En el picturebox1, pondremos lo siguiente para que se puedan mostrar las imagenes del semaforo.
            pictureBox1.Image = Semaforo.Properties.Resources.semaforo1;  //Buscamos la imagen que se mostrara en el box.
            detener.Enabled = false;  //Declaramos que el boton "detener" este deshabilitado.
            Apagar.Enabled = false;  //Declaramos que el boton "Apagar" este deshabilitado.
        }

        private void timer1_Tick(object sender, EventArgs e)
        {           /*Dentro del evento Tick, pondremos un Switch Case, que se encargara de 
                     estar mostrando la secuencia de imagenes que le dara vida a nuestro semaforo. */
            
            switch(i)  //Pondremos la variable que se estara modificando a lo largo de los casos.
            {
                case 0: //Cuando la variable "i" tenga el valor de 0 (Valor predeterminado) se ejecutara lo siguiente.
                    pictureBox1.Image = Semaforo.Properties.Resources.semaforo_verde; //Mostrara la imagen del semaforo en verde.
                    timer1.Interval = 2000;  //Le pondremos un pequeno delay de 2 segundos entre estas imagenes.
                    pictureBox2.Image = Semaforo.Properties.Resources.semaforo_rojo;  //Mostrara la imagen del semaforo en rojo.
                    timer1.Interval = 3500;  //Delay de 3,5 segundos.
                    i = 1;  //Esta es una parte importante del case, aqui se le sumara 1 a la variable, para que pase al siguiente caso.
                    break;  //Fin del caso 0.

                case 1:  //Cuando la variable "i" tenga el valor de 1, se ejecutara lo siguiente.
                    pictureBox1.Image = Semaforo.Properties.Resources.semaforo_amarillo;  //Mostrara la imagen del semaforo en amarillo.
                    timer1.Interval = 1500;  //Delay de 1,5 segundos.                   
                    i = 2;  //A la variable se le cambia el valor de 1 a 2.
                    break;  //Fin del caso 1.

                case 2:  //Cuando la variable "i" tenga el valor de 2, se ejecutara lo siguiente.
                    pictureBox1.Image = Semaforo.Properties.Resources.semaforo_rojo;  //Mostrara la imagen del semaforo en rojo.
                    timer1.Interval = 3500;  //Delay de 3,5 segundos.
                    pictureBox2.Image = Semaforo.Properties.Resources.semaforo_verde;  //Mostrara la imagen del semaforo en verde.
                    timer1.Interval = 2000;  //Delay de 2 segundos.
                    i = 3;  //A la variable se le cambia el valor de 2 a 3.
                    break;  //Fin del caso 2.
                    
                case 3:  //Cuando la variable "i" tenga el valor de 3, se ejecutara lo siguiente.
                    pictureBox2.Image = Semaforo.Properties.Resources.semaforo_amarillo;  //Mostrara la imagen del semaforo en amarillo.
                    timer1.Interval = 1500;  //Delay de 1,5 segundos.
                    i = 0;  //A la variable se le cabia el valor de 3 a 0 para volver a comenzar la secuencia de imagenes, a esto se le llama loop.
                    break;  //Fin del caso 3.
            }
        }

        private void pictureBox2_Click(object sender, EventArgs e)
        {  //En el picturebox2, pondremos lo siguiente para que se puedan mostrar las imagenes del semaforo.
            pictureBox2.Image = Semaforo.Properties.Resources.semaforo1;  //Buscamos la imagen para mostrar en el box.
            detener.Enabled = false;  //Declaramos que el boton "detener" este deshabilitado.
            Apagar.Enabled = false;  //Declaramos que el boton "Apagar" este deshabilitado.
        }

        private void detener_Click(object sender, EventArgs e)
        {  //Dentro del evento click del boton "detener", haremos que al pulsarlo, cambie de texto para ahorrarnos un boton y hacerlo 2 en 1.
            //Con la funcion "if - else" vamos a realizar el cambio de texto del boton en cuestion.
            if(detener.Text=="Detener")  //Aqui dice, que si el boton este en el estado de "Detener"-->
            { //--> Se cumplira la condicion y por lo tanto, el timer se pausa y el texto del boton cambia de "Detener" a "Seguir".
            timer1.Enabled = false;
            detener.Text = "Seguir";
            }
            else  //Con la funcion "else" diremos lo contrario a lo anterior.
                if (detener.Text == "Seguir")  ////Aqui dice, que si el boton este en el estado de "Seguir"-->
                {//--> Se cumplira la condicion y por lo tanto, el timer sigue y el texto del boton cambia de "Seguir" a "Detener".
                    timer1.Enabled = true;
                    detener.Text = "Detener";
                }
        }

        private void Apagar_Click(object sender, EventArgs e)
        {  //Dentro del evento click del boton "Apagar" declaramos lo siguiente.
            timer1.Stop();  //El timer se apaga por completo.
            detener.Enabled = false;  //Declaramos que el boton "detener" sea deshabilitado.
            Apagar.Enabled = false;  //Declaramos que el boton "Apagar" sea deshabilitado.
            Iniciar.Enabled = true;  //Declaramos que el boton "Iniciar" sea habilitado.
            pictureBox1.Image = Semaforo.Properties.Resources.semaforo1;  //Y nos regresamos a la imagen donde ninguna luz del semaforo esten encencidas.
            pictureBox2.Image = Semaforo.Properties.Resources.semaforo1;  // ?
        }//FIN DEL CODIGO.
    }                  // 6B Mecatronica, Equipo: Los Aprencides de Fibonacci, a 26/04/2017.

}                     //Gracias por tomarse el tiempo de leerlo profesor, que tenga buen dia!

martes, 21 de febrero de 2017

Presentación: Disco Duro

El día de hoy les traemos una presentación en PowerPoint acerca de lo básico que se debe de saber sobre la Unidad de Disco Duro (HDD)


Muchas gracias por leer nuestra investigación, nos vemos hasta nuestra siguiente entrada.

¡Hasta luego!

¡Bienvenidos a nuestro Blog!

Buen día, nosotros somos "Los Aprendices de Fibonacci", equipo conformado por:
  • Betanzos Quevedo Israel
  • Labastida Vazquez Edgar Alejandro
  • Nava Rodriguez Guillermo
  • Martinez Luna Víctor Alan 
  • Gonzales Sanchez Antonio Rafael

Siendo alumnos del CBTis #7, nos sentimos orgullosos por mostrarles nuestras investigaciones y aportes sobre los temas que veremos en la materia Integra e Interpreta Dispositivos en Sistemas Mecatrónicos impartida por el Ing. Oscar Sanchez Ureño.
Sean bienvenidos a este blog :)



URL: http://aprendices-de-fibonacci.blogspot.mx/