none
Encender y apagar RRS feed

  • Pregunta

  • Hola:

    Estoy diseñando una aplicacion que necesita  disparar un evento y cancelar ese evento para volver activar ese evento pasado un tiempo, pongamos 15 minutos.

    Seria un continuo si el usuario no clikea un button y lo finaliza.

    Por ejemplo:

    Necesito que salga un boton que sea rojo y despues de 15 minutos sea verde, para volver a ser rojo y despues verde cada 15 minutos.

    Estoy usando la clase timer y el evento tick.

    Pero es aqui donde tengo la duda, mi logica me dice que necesito dos timer, uno para activar y otro volver a activar despues de parar, o bien una sentencia While.

    ¿que logica usariais?


    Reinaldo

    jueves, 22 de febrero de 2018 15:51

Respuestas

  • La idea de 2 timers suena correcta.  Pruebe y verá.

    Jose R. MCP
    Code Samples

    • Marcado como respuesta Paradisus domingo, 25 de febrero de 2018 19:30
    sábado, 24 de febrero de 2018 5:28
    Moderador
  • Puedes usar tambien un único timer con un intervalo de 1 segundo. Pon a nivel de clase una variable entera como contador. Otra variable Boolean como estado. En cada Tick revisarrel contador y el estado. Si no han pasado más de 15m incrementar el contador. E ir trabajando con el estado. 

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    • Propuesto como respuesta Jorge TurradoMVP sábado, 24 de febrero de 2018 12:01
    • Marcado como respuesta Paradisus domingo, 25 de febrero de 2018 19:32
    sábado, 24 de febrero de 2018 10:40
    Moderador

Todas las respuestas

  • La idea de 2 timers suena correcta.  Pruebe y verá.

    Jose R. MCP
    Code Samples

    • Marcado como respuesta Paradisus domingo, 25 de febrero de 2018 19:30
    sábado, 24 de febrero de 2018 5:28
    Moderador
  • Puedes usar tambien un único timer con un intervalo de 1 segundo. Pon a nivel de clase una variable entera como contador. Otra variable Boolean como estado. En cada Tick revisarrel contador y el estado. Si no han pasado más de 15m incrementar el contador. E ir trabajando con el estado. 

    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    • Propuesto como respuesta Jorge TurradoMVP sábado, 24 de febrero de 2018 12:01
    • Marcado como respuesta Paradisus domingo, 25 de febrero de 2018 19:32
    sábado, 24 de febrero de 2018 10:40
    Moderador
  • O podrías intentar usando el System.Threading, que hace una función parecida a la de esperar. Te doy un ejemplo: 

    Haces un bucle for el cual tenga que ejecutarse si el usuario no clickea. Este  por defecto hace que el botón sea rojo, luego usas el comando Thread.Sleep(15000) (lo que hace es esperar 15 segundos) y luego hacer que el botón vuelva a ser rojo.

    Por cierto, para usar el comando Thread, necesitar antes usar este.

    using System.Threading;

    domingo, 25 de febrero de 2018 6:42
  • Hola:

    Finalmente use 2 timer, y dentro de ellos un contador y sentencias condicionales.

    Me encontre que  el usuario no podia elegir el tiempo de encendido y apagado, para ello añadi dos trackbar y pase el value al timer.

    La aplicacion me permite encender y apagar un electrodomestico usando la red wifi, para ello use la clase Webrequest.

    Estoy pensado que seria practico añadir tambien el encendido y el apagado a una hora

    Gracias por la ayuda.

    determinada.


    Reinaldo

    domingo, 25 de febrero de 2018 19:30