Foros del Web » Programación para mayores de 30 ;) » .NET »

Progress Bar

Estas en el tema de Progress Bar en el foro de .NET en Foros del Web. Hola quisiera implementar un Progress Bar pero no me queda claro la manera de hacerlo, mi idea es que el Progress Bar se llene a ...
  #1 (permalink)  
Antiguo 05/05/2011, 11:18
Avatar de Highlander  
Fecha de Ingreso: junio-2006
Ubicación: Concepción, Chile
Mensajes: 475
Antigüedad: 18 años, 5 meses
Puntos: 4
Progress Bar

Hola quisiera implementar un Progress Bar pero no me queda claro la manera de hacerlo, mi idea es que el Progress Bar se llene a medida que se ejecuta una función.

Esto necesito implementarlo sin un background worker (que es lo encuentro cuando busco información al respecto) quiero que la aplicación permanezca "bloqueada" hasta que termine la función con su Progress Bar.

Saludos y gracias por cualquier sugerencia.
__________________
Ingeniero (E) en Computación e Informática
The last man alone with god.
  #2 (permalink)  
Antiguo 05/05/2011, 15:21
 
Fecha de Ingreso: marzo-2010
Mensajes: 191
Antigüedad: 14 años, 8 meses
Puntos: 3
Respuesta: Progress Bar

Hola

Que necesitas exactamente? Dependiendo de lo que buscas, la implementación puede ser de una forma u otra.

Lo que te tiene que quedar claro es que la barra de progreso tiene tres propiedades que son muy importantes y que son:

Minimum --> Es el valor con el que inicia la barra (normalmente 0)
Maximum --> Es el valor máximo de la barra y con el que se terminará la carga
Value --> Es el valor actual de la barra y que nunca puede ser superior al Maximum

Dicho esto, tienes que ir jugando con la propiedad Value mientras estás haciendo tu proceso, es decir...

Yo lo que hago es dividir la barra en tantas partes como procesos tengo para que se llene, es decir, si tengo que cargue 5 procesos (carga_nombre, carga_apellido, carga_domicilio, carga_edad y carga_ciudad) y el valor Maximum es 100, pues hago lo siguiente:

Código vb:
Ver original
  1. public sub cargadatos()
  2.      'pongo los parametros de la barra de progreso
  3.     progressbar1.minimum=0
  4.      progressbar1.maximum=100
  5.      progressbar1.value=0
  6.  
  7.      'incremento la barra conforme voy haciendo los procesos
  8.     nombre=carga_nombre()
  9.      progressbar1.value=progressbar1.value + 20
  10.  
  11.      apellido=carga_apellido()
  12.      progressbar1.value=progressbar1.value + 20
  13.  
  14.      domicilio=carga_domicilio()
  15.      progressbar1.value=progressbar1.value + 20
  16.      
  17.      edad=carga_edad()
  18.      progressbar1.value=progressbar1.value + 20
  19.  
  20.      ciudad=carga_ciudad()
  21.      progressbar1.value=progressbar1.value + 20
  22.  
  23.      'una vez ha terminado el proceso, escondo la barra
  24.     progressbar1.visible = false
  25. end sub

Si te fijas, el 20 sale de dividir 100 (el Maximum) entre 5 procesos que tengo, para que se llene de forma equilibrada.

Espero que te sirva de ayuda.

Saludos
  #3 (permalink)  
Antiguo 06/05/2011, 09:10
Avatar de Highlander  
Fecha de Ingreso: junio-2006
Ubicación: Concepción, Chile
Mensajes: 475
Antigüedad: 18 años, 5 meses
Puntos: 4
Respuesta: Progress Bar

Gracias me sirvió tu explicación es bien clara, saludos.


Cita:
Iniciado por Fernando_net Ver Mensaje
Hola

Que necesitas exactamente? Dependiendo de lo que buscas, la implementación puede ser de una forma u otra.

Lo que te tiene que quedar claro es que la barra de progreso tiene tres propiedades que son muy importantes y que son:

Minimum --> Es el valor con el que inicia la barra (normalmente 0)
Maximum --> Es el valor máximo de la barra y con el que se terminará la carga
Value --> Es el valor actual de la barra y que nunca puede ser superior al Maximum

Dicho esto, tienes que ir jugando con la propiedad Value mientras estás haciendo tu proceso, es decir...

Yo lo que hago es dividir la barra en tantas partes como procesos tengo para que se llene, es decir, si tengo que cargue 5 procesos (carga_nombre, carga_apellido, carga_domicilio, carga_edad y carga_ciudad) y el valor Maximum es 100, pues hago lo siguiente:

Código vb:
Ver original
  1. public sub cargadatos()
  2.      'pongo los parametros de la barra de progreso
  3.     progressbar1.minimum=0
  4.      progressbar1.maximum=100
  5.      progressbar1.value=0
  6.  
  7.      'incremento la barra conforme voy haciendo los procesos
  8.     nombre=carga_nombre()
  9.      progressbar1.value=progressbar1.value + 20
  10.  
  11.      apellido=carga_apellido()
  12.      progressbar1.value=progressbar1.value + 20
  13.  
  14.      domicilio=carga_domicilio()
  15.      progressbar1.value=progressbar1.value + 20
  16.      
  17.      edad=carga_edad()
  18.      progressbar1.value=progressbar1.value + 20
  19.  
  20.      ciudad=carga_ciudad()
  21.      progressbar1.value=progressbar1.value + 20
  22.  
  23.      'una vez ha terminado el proceso, escondo la barra
  24.     progressbar1.visible = false
  25. end sub

Si te fijas, el 20 sale de dividir 100 (el Maximum) entre 5 procesos que tengo, para que se llene de forma equilibrada.

Espero que te sirva de ayuda.

Saludos
__________________
Ingeniero (E) en Computación e Informática
The last man alone with god.

Etiquetas: bar, progress
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:31.