Visual Basic.NET - ProgressBar

 
Vista:

ProgressBar

Publicado por amateos9 (2 intervenciones) el 16/11/2005 12:25:53
Hola a todos,
necesitaría que alguien me ayudara en un problema con un "progressbar". Tengo un Progressbar en un status strip en el diseño del MDI. Si realizo la llamada a la función que me ejecuta el Progressbar desde el formulario del MDI se ejecuta correctamente, pero si realizo la llamada desde otra clase, se ejecuta la función pero no visualiza el crecimiento de la barra de progreso. ¿ Sabría alguien explicarme el motivo ? ... .os muestro el procedimiento del Progressbar:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Public Sub MostrarProgreso()
        Try
            Dim Resultado As Integer
            Dim n As Integer
            Me.ToolStripProgressBar1.Maximum = 100
            Me.ToolStripProgressBar1.Minimum = 0
            For n = 0 To Me.ToolStripProgressBar1.Maximum()
                Me.ToolStripStatusLabel1.Text = "Cargando ..."
                Me.ToolStripProgressBar1.Value = n
            Next
            Me.ToolStripStatusLabel1.Text = "Cargado"
            Resultado = MsgBox("proceso cargado", MsgBoxStyle.OK)
            If Resultado = MsgBoxResult.OK Then
               Me.ToolStripStatusLabel1.Text = ""
               Me.ToolStripProgressBar1.Value = 0
            End If
        Catch ex As Exception
            MsgBox(ex.ToString, MsgBoxStyle.Exclamation, "Error")
        End Try
    End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

ProgressBar

Publicado por Pico (167 intervenciones) el 16/05/2014 10:33:44
Para que el windows pinte algo tiene que procesar mensajes. Si te metes en una función no se procesará ninguno hasta que salgas. Así que el ProcessBar está a 0 al entrar en la función y a 100 al salir, y eso pinta. Para que pinte los valores intermedios hay que hacer que se procesen mensajes dentro del bucle, con Application.DoEvents, por ejemplo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

ProgressBar

Publicado por Alvaro Godoy (26 intervenciones) el 16/05/2014 17:53:51
dentro de la misma funcion hace el incremento del progresbar, te adjunto un ejemplo muy burdo, pero solo para que tengas la idea.

funtion fnEjemplo
.
.
progresbar1 = progresbar + 1
.
.
end
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar