Bueno estava pensando k havia de aportar hoy y me he acuerdado de esto, espero k les sirva.
Es un ejemplo de como poner una progressbar en una listview (normalmente usado para hacer clientes de downloads)
Solo agregan un timer, una listview y una progressbar.
Option Explicit
Private Declare Function SetParent Lib "user32.dll" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
Dim iRow As Integer
Private Sub Form_Load()
Dim i As Integer
Timer1.Enabled = False
Timer1.Interval = 25
ProgressBar1.Visible = False
ProgressBar1.Min = 0
ProgressBar1.Max = 100
With ListView1
.View = lvwReport
.LabelEdit = lvwManual
.ColumnHeaders.Add , , "Index"
.ColumnHeaders.Add , , "Progress"
End With
With ListView1.ColumnHeaders
.Item(1).Width = 1000
.Item(2).Width = 3500
End With
For i = 1 To 5
ListView1.ListItems.Add , , i
ListView1.ListItems.Item(i).SubItems(1) = "Waiting..."
Next i
iRow = 1
SetParent ProgressBar1.hWnd, ListView1.hWnd
ProgressBar1.Move ListView1.ColumnHeaders(2).Left, _
ListView1.ListItems.Item(iRow).Top, _
ListView1.ColumnHeaders(2).Width, _
ListView1.ListItems.Item(iRow).Height
ProgressBar1.Visible = True
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
If ProgressBar1.Value < ProgressBar1.Max Then
ProgressBar1.Value = ProgressBar1.Value + 1
Else
Timer1.Enabled = False
ListView1.ListItems.Item(iRow).SubItems(1) = "Completed"
ProgressBar1.Visible = False
iRow = iRow + 1
If iRow > ListView1.ListItems.Count Then Exit Sub
SetParent ProgressBar1.hWnd, ListView1.hWnd
ProgressBar1.Move ListView1.ColumnHeaders(2).Left, _
ListView1.ListItems.Item(iRow).Top, _
ListView1.ColumnHeaders(2).Width, _
ListView1.ListItems.Item(iRow).Height
ProgressBar1.Value = ProgressBar1.Min
ProgressBar1.Visible = True
Timer1.Enabled = True
End If
End Sub
Kualkier duda..

Kiero comentarios! Plz? xD
Salu2