Hej Funkar det inte att lägga till en event i klassen och sedan raise:a den på varje varv i loopen? Sen är det bara att ha en eventhandler i formuläret som instansen av klassen finns i som uppdaterar progressbar:en. Kan inte VB.NET men principen är väl att du sätter Progressbarens min till 0 och max till objTableProjekt.Rows.Count (kanske inte finns, men du förstår vad jag menar), sedan ökar man progressbarens value med 1 för varje rad. tackar exakt så jag ville ha det, men av någon anledning så hittade jag inte count innan, men nu gjorde jag det. Progressbar
Jag håller på att försöka få ordning på en progressbar, dock utan att lyckas så bra
jag har här en funktion som tar ut alla MaterialID av ett visst projektID. Jag skulle vilja ha en progressbar här som börjar när man kör denna funktionen och sen slutar när den har gått igenom varje rad.
Var ska jag sätta in progressbaren och hur ska jag lösa detta.
<code>
Private Sub fyllMaterial(ByVal q As Integer)
objDS.Clear()
Dim sSQL As String = "select MaterialID from Material where ProjektId= " & a
Dim objDataAdapterProjekt As New OleDb.OleDbDataAdapter(sSQL, objConn)
objDataAdapterProjekt.Fill(objDS, "Projekt")
Dim objTableProjekt As DataTable
objTableProjekt = objDS.Tables("Projekt")
lv3.Items.Clear()
lv3.Columns.Clear()
lv3.Columns.Add("MaterialID", 100, 0)
Dim objRow As DataRow
For Each objRow In objTableProjekt.Rows
If (objRow.RowState <> DataRowState.Deleted) Then
Dim item As ListViewItem
item = lv3.Items.Add(objRow.Item("MaterialID").ToString())
arrListaGamlaMaterialID.Add(objRow.Item("MaterialID"))
If q = 1 Then
databas("delete * from Material where MaterialId = " & objRow.Item("MaterialID").ToString() & "")
End If
End If
Next
End Sub
</code>Sv: Progressbar
Alltså ungefär:
<code>Public event Progress()</code>
deklareras i klassen. Sedan raise:as den i loopen med
<code>Raiseevent Progress</code>
för att tas om hand av
<code>Public sub vadsomhelst() handles minklassinstans.progress</code>
i formuläret.Sv: Progressbar
/JörgenSv: Progressbar
Tack