SoloCodigo

Programación General => C/C++ => C++ Builder => Mensaje iniciado por: ambarrerar en Miércoles 8 de Marzo de 2006, 19:37

Título: Reloj Análogo
Publicado por: ambarrerar en Miércoles 8 de Marzo de 2006, 19:37
Necesito hacer un reloj analogo y no se como empezar.
Mejor dicho no se nada.
Les agradeceria su ayuda!!
Mucha gracias
Título: Re: Reloj Análogo
Publicado por: Linspire en Miércoles 8 de Marzo de 2006, 20:30
Porque no haces primero un Reloj apoyando de de un FOR infinito y en ello te basas para hacer uno analógico, por ejemplo, podrías pintar una linea con un canvas y cada cierto tiempo (1 min, 1 seg, 1 hora) rotar la linea X grados (Eso podría ser una manecilla) y así sucesivamente. Bueno, es solo una idea, espero que hayas entendido y también espero haber entendido lo que quieres.
Título: Re: Reloj Análogo
Publicado por: ambarrerar en Jueves 9 de Marzo de 2006, 04:43
Cita de: "Linspire"
Porque no haces primero un Reloj apoyando de de un FOR infinito y en ello te basas para hacer uno analógico, por ejemplo, podrías pintar una linea con un canvas y cada cierto tiempo (1 min, 1 seg, 1 hora) rotar la linea X grados (Eso podría ser una manecilla) y así sucesivamente. Bueno, es solo una idea, espero que hayas entendido y también espero haber entendido lo que quieres.
Muchas gracias, pero no entiendo muy bien lo que me quieres decir.

Me da pena pero me podrias dar un ejemplo?

Muchas gracias!!
Título: Re: Reloj Análogo
Publicado por: Linspire en Jueves 9 de Marzo de 2006, 16:42
Pues en mi caso nunca he hecho un reloj digital para hecerte sincero, y pues tambien doy nuevo en esto de la programación, hace poco hice un cronómetro para una aplicación, quedo más o menos así.

int i,x=0; //Declaramos variables.

        if(Edit1->Text.IsEmpty()==true) //Comprobamos que se haya escrito un número
        ShowMessage("Por favor escribe un número.");
        else
        {
        x=Edit1->Text.ToInt();
                for(i=x;i>=1;i-1) //Iniciamos el ciclo
                {
                        Form1->Caption=i;
                        Label1->Caption=i;
                        Label1->Repaint();
                        Sleep(10); //Esperamos 10 milesimas de segundo
                        Label1->Refresh();
                        i--;  //Cuando pase el tiempo de espera restamos 1 al tiempo inicial, esto continuará hasta que i=1
                }ShowMessage("Times is over");
        }

Eso podría considerarse un For normal, compuesto así for(i>=1;i<=100,i++),
un for infinito es algo así for(;;). Dejame investigar más sobre este for y veré si puedo brindarte más ayuda porque creo que yo también necesitaré conocerle.