elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  [Ayuda] Programcion De Progressbar
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Ayuda] Programcion De Progressbar  (Leído 2,482 veces)
Caluccy82

Desconectado Desconectado

Mensajes: 1


Ver Perfil
[Ayuda] Programcion De Progressbar
« en: 19 Julio 2014, 18:06 pm »

Soy un novato y estoy aprendieno a programar en VB 2012. Necesito ayuda con lo sigunete:

Quiero agreagar un progressbar a mi programa para que se llene dependiendo en cuantos segundos faltan para que llege al valor ingreso en un TextBox. El Valor ingreso en un text box es comparado con un valor de un timer (cronometro) . Mi codigo abajo:
-----------------------------------------------------

Public Class Form1
    Private hour As Integer = 0
    Private minute As Integer = 0
    Private second As Integer = 0

    Public Sub show_time()
        second += 1
        If second = 59 Then
            second = 0
            minute += 1
            If minute = 59 Then
                minute += 1
                hour += 1
            End If
        End If

        Label3PrgressStdPC.Text = hour.ToString.PadLeft(2, "0") & ":"
        Label3PrgressStdPC.Text &= minute.ToString.PadLeft(2, "0") & ":"
        Label3PrgressStdPC.Text &= second.ToString.PadLeft(2, "0")
        Label3PrgressStdPC.Refresh()

    End Sub

    Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
        show_time()
        TextBox1.SelectedText = TextBox1.Text
        If TextBox1.SelectedText = Label3PrgressStdPC.text Then
            Timer1.Stop()
            MsgBox("time is up")
        End If
    End Sub

    Private Sub Bn_start_St01_Click(sender As Object, e As EventArgs) Handles Bn_start_St01.Click
        Timer1.Start()
        Timer2.Start()
        Timer1.Enabled = True
        Timer2.Enabled = True
    End Sub

    Private Sub Panel1_Paint(sender As Object, e As PaintEventArgs) Handles Panel1.Paint

    End Sub

    Private Sub ProgressBar1_Click(sender As Object, e As EventArgs) Handles ProgressBar1.Click
        ProgressBar1.Maximum =???????????????????
        ProgressBar1.Minimum = 0
        Timer2.Interval = 1000
    End Sub

    Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick
        ProgressBar1.Value = val
        val = ????????????????????????
        If (?????????? = ???????????) Then
            Timer2.Stop()
        End If
    End Sub


End Class
--------------------------------------------------------------------

Sugerencias :huh:?

Muchas Gracias


En línea

FranciskoAsdf

Desconectado Desconectado

Mensajes: 231


Ni bueno, ni malo. Solo nada.


Ver Perfil WWW
Re: [Ayuda] Programcion De Progressbar
« Respuesta #1 en: 21 Julio 2014, 06:15 am »

Debes saber el maximo de tiempo que procesara el progresbar. Por ejemplo, si dices que el tiempo máximo lo tomas de un textbox, entonces debería ser

Código
  1. ProgressBar1.Maximum = Val(Text1.Text)

El Valor inicial del PB debes hacerlo en el FormLoad(en verdad no estoy seguro como funciona el PB en vb2012)

Después debes sumar el valor inicial por 1 hasta que llegue al valor final.

Código
  1. Do While Not Timer1.Stop
  2. ProgressBar1.Value = ProgressBar1.Value + 1
  3. Do Events ' no estoy seguro si esta sentencia funciona en VB2012
  4. Loop
  5. 'asdf
  6.  

Espero que esto te de alguna idea, dejare un código que uso para hacer una carga en una pantalla de inicio. Debes tener en cuenta que esto esta hecho en VB6.0

Código
  1. Private Sub Form_Activate()
  2.   Set rs = LoadRecordSet("SELECT * FROM CLLDB ORDER BY Material")
  3.   ProgressBar1.Max = rs.RecordCount
  4.   ProgressBar1.Value = 0
  5.   Do While Not rs.EOF
  6.      ProgressBar1.Value = ProgressBar1.Value + 1
  7.      DoEvents
  8.      rs.MoveNext
  9.   Loop
  10.   Form6.Show
  11.   Unload Me
  12. End Sub
  13.  

Código
  1. Private Sub Form_Load()
  2.   ProgressBar1.Min = 0
  3. End Sub
  4.  

Saludos.


« Última modificación: 21 Julio 2014, 06:16 am por FranciskoAsdf » En línea

Asdf debería ser algún tipo de función.
XresH


Desconectado Desconectado

Mensajes: 384



Ver Perfil WWW
Re: [Ayuda] Programcion De Progressbar
« Respuesta #2 en: 22 Julio 2014, 01:40 am »

Como sugerencia te digo que el code de FranciskoAsdf es correcto, y que deberias manipular tu PB en cualquier VB con los valores de 0 y 100(Propiedades Min & Max en V6)

A veces el valor que queres controlar es mayor, podrias buscar la forma de convertir o "trasladar" esos valores siempre asumiendo un rango de 0~100 para evitar confusiones, al menos a mi me ha servido de mucho en un inicio ya que al momento de hacer "cuentas" en el PB solo me queda un rango de numeros completamente unico(0/100)

Saludos.
En línea

[ - Si eres programador y quieres que tus proyectos esten en mi blog(con o sin source), consúltame! - ]
Entra A Mi Blog De Programación | | Dudas en este post :| | >>Clic para ir al Post<<
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines