• Domingo 22 de Diciembre de 2024, 23:41

Autor Tema:  Duda Con Timer  (Leído 1157 veces)

alemag

  • Miembro MUY activo
  • ***
  • Mensajes: 180
    • Ver Perfil
Duda Con Timer
« en: Viernes 30 de Junio de 2006, 13:13 »
0
Saludos, tengo mi codigo de la siguiente manera:
// instrucciones
Generar g=new Generar();
// instrucciones

donde Generar es una clase en la que se generan unos datos puede tardar un minuto, y mientras ese minuto quiero que en la barra de estado aparezcan los tipicos puntos suspensivos cada segundo (al primer segundo un punto, al segundo segundo dos puntos, al tercer segundo tres puntos, al cuarto segundo de nuevo un punto ... es decir,como mucho tres puntos suspensivos, y luego que vuelva a poner uno d nuevo). Por favor ayudame. Gracias.

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Duda Con Timer
« Respuesta #1 en: Viernes 30 de Junio de 2006, 14:37 »
0
Puedes crear una clase o un metodo que ponga un punto cada segundo, pero esta clase debes instanciarla como un hilo o bien invocar el metodo con un hilo.
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

alemag

  • Miembro MUY activo
  • ***
  • Mensajes: 180
    • Ver Perfil
Re: Duda Con Timer
« Respuesta #2 en: Sábado 1 de Julio de 2006, 16:00 »
0
Pero lo que no se es que cuando vayan 5 segundos, volver a escribir un punto solo, y no 5, ese bucle es el que no lo logro hacer, no se reiniciar esa cuenta. Como lo podria hacer ??

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Duda Con Timer
« Respuesta #3 en: Sábado 1 de Julio de 2006, 20:10 »
0
como estas escribiendo cada punto? es una aplicacion de consola o una e GUI de windows?
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io

Nagisa

  • Miembro MUY activo
  • ***
  • Mensajes: 119
  • Nacionalidad: es
    • Ver Perfil
Re: Duda Con Timer
« Respuesta #4 en: Domingo 2 de Julio de 2006, 22:16 »
0
Usa el operador modulo ( % ).

Por ejemplo:

static int secs = 0;
//....
public void muestra_puntos(){
 while (!listo){  // listo es la variable que controla si el trabajo esta listo o no.
  secs++;
  for (int i = 0; i < (secs%5) ; i++){
   // Mostrar un punto
  }
  sleep(1000); // Espera un segundo
 }
}

Saludos.