Hola, he visto multitud de programs en vb que tienen una barra de ese estilo, que son como "Cargando"...las he visto al iniciar un programa, al pusar un boton y esperar la contestacion del programa...etc.Como se hace?
Saludos
Se trata de los controles de microsoft common controls 6.0.
Amm...tiene el simbolillo de un icono no?
Y como va? ???
yo hago la barra de la siguiente manera:
coloco un PictureBox y dentro de el coloco 3 botones con los botones en falso en un Timer con intervalo de 100
escribo los siguientes codigos
Private Sub Timer1_Timer()
Cd1.Left = Cd1.Left + 120
Cd2.Left = Cd2.Left + 120
Cd3.Left = Cd3.Left + 120
If Cd1.Left = 2400 Then
Cd1.Left = 0
Cd2.Left = 120
Cd3.Left = 240
End If
End Sub
cd1,cd2,c3, son los botones
También se puede hacer con imágenes pero las barras que trae el windows se controlan de otra manera. Ahora mismo no me acuerdo, de todas formas tienes el google para buscarlo.
Cita de: LICHONGO en 27 Junio 2005, 21:08 PM
yo hago la barra de la siguiente manera:
coloco un PictureBox y dentro de el coloco 3 botones con los botones en falso en un Timer con intervalo de 100
escribo los siguientes codigos
Private Sub Timer1_Timer()
Cd1.Left = Cd1.Left + 120
Cd2.Left = Cd2.Left + 120
Cd3.Left = Cd3.Left + 120
If Cd1.Left = 2400 Then
Cd1.Left = 0
Cd2.Left = 120
Cd3.Left = 240
End If
End Sub
cd1,cd2,c3, son los botones
Gracias pero lo he probado y no me funciona...sabeis el porque?
Te refieres a un Progressbar???
Pues bien fácil...
Progressbar.Value = 0 'barra vacía
Progressbar.Value = 100 'barra llena
Es sólo un ejemplo.
Saludos,
Ertai
PD: No me copies la firma!! >:( >:( xDD
El codigo mas simple que se me ocurre para una barra de progreso seria algo asi:
Private Sub cmdEmpezar_Click()
Timer1.Interval = 60
End Sub
Private Sub timer1_timer()
ProgressBar1.Value = ProgressBar1.Value + 1
End Sub
Tendrias que insertar un boton, una barra de progreso y el timer.
Este codigo daria error al completar, pero para el ejemplo sirve...
para solucionar el error habria que agregar alguna condicion que frene el ciclo al completar (que deberias aplicarlo a la tarea que estas esperando que termine)
Espero que te sirva, Saludos
Cita de: Ertai en 27 Junio 2005, 23:22 PM
Te refieres a un Progressbar???
Pues bien fácil...
Progressbar.Value = 0 'barra vacía
Progressbar.Value = 100 'barra llena
Es sólo un ejemplo.
Saludos,
Ertai
PD: No me copies la firma!! >:( >:( xDD
Gracias lo probare...
La firma me la puse cuando entre aqui en el foro...a mis 2 o 3 primeros mensajillos...estas to ciego eh :o
jaajaja Saludos
Es verdad...despues cuando termina de cargarse la barra da error... :-\
Joder, lógico.
If ProgressBar.Value = 100 (por ejemplo) timer1.enabled = false
Y la firma sí que la copiaste que me acuerdo que no la tenias antes, es más, me comentaste algo de que te gustaba. No me molesta, era solo coña.
Saludos.
Si querés podés crear tu propio control ProgressBar de una forma muy fácil usando un PictureBox.
En un formulario poné un PictureBox con el nombre picProgress y un botón con el nombre cmdTest y pegá el siguiente código en el formulario.
Option Explicit
Private Sub IncreaseProgress(ByVal Value As Single, ByVal Max As Long)
Dim snWidth!
With picProgress
snWidth = .Width / Max
picProgress.Line (10, 10)-(snWidth * Value, .Height - 40), , BF
End With
End Sub
Private Sub cmdTest_Click()
Dim i%, snTime!
For i = 1 To 100
snTime = Timer
Do While (Timer - snTime) < 0.25
DoEvents
Loop
Call IncreaseProgress(i, 100)
Next
End Sub
Asi se pueden personalizar los colores, fuente, etc.
Y BenRu ya deja de preguntar "cómo cómo y cómo", busca en google que hay muchos ejemplos y documentación sobre el control ProgressBar.
Saludos.
Cita de: BenRu en 28 Junio 2005, 01:21 AM
Es verdad...despues cuando termina de cargarse la barra da error... :-\
me estas cargando??
te avise que iba a dar error al final, pero el punto era que veas como funciona... te dije que para solucionar el error uses una condicion que se ligue con la tarea que estas esperando que termine.
entendiste?, espero respuesta.
Saludos
Que Onda Homs
Lo primero que tienes que hacer es insertar un
[ProgressBar]
Min=1
Max=100
y un
[CommandButton]
Name=Aceptar
Caption=Aceptar
y un
[TIMER]
Inerval=100
Enabled=False
Inserta el siguiente codigo:
Private Sub Aceptar_Click()
Timer1.Enabled = True
End Sub
Private Sub Form_Load()
Timer1.Interval = 100
End Sub
Private Sub Timer1_Timer()
Static x
If IsEmpty(x) Then x = 1
ProgressBar1.Value = x
If x = ProgressBar1.Max Then
x = ProgressBar1.Max
MsgBox "Como ves el progress bar", vbOKOnly + vbInformation, "Que Onda"
End
Else
x = x + 1
End If
End Sub
Si tienes Dudas sobre el progressbar hazmelas saber
Salu2