Hi,
habe ein Problem mit einer ProgressBar. Ich habe meine DB-Abfrage in einen Threat gepackt, damit die Form an sich ansprechbar bleibt. Das war der Plan.
Aufruf wie folgt:
wobei Fortschritt = ProgressBar ist
Der Balken rattert jetzt durch, solange die DB Abfrage dauert. Das klappt aber leider nur, wenn man das Fenster in Ruhe lässt.
Sobald es verschoben oder von einem anderen Fenster verdeckt wird, hängt der Balken wieder, wird also net neugezeichnet (?).
Hat einer eine Idee, wie man das idiotensicher gestalten könnte ??
habe ein Problem mit einer ProgressBar. Ich habe meine DB-Abfrage in einen Threat gepackt, damit die Form an sich ansprechbar bleibt. Das war der Plan.
Aufruf wie folgt:
VB.NET-Quellcode
- Dim ts As System.Threading.ThreadStart = New System.Threading.ThreadStart(Function() WarteAufDB(MyConfig, Skript))
- Dim t As System.Threading.Thread = New System.Threading.Thread(ts)
- t.Start()
- While t.IsAlive ' solange warten, Balken erhöhen, neu zeichnen bis DB Abfrage fertig
- System.Threading.Thread.Sleep(100) ' Hauptthread wartet, nicht die sauberste Lösung aber die einfachste
- If Fortschritt.Value < 10 Then Fortschritt.Value += 1 Else Fortschritt.Value = 0
- Me.Refresh()
- End While
wobei Fortschritt = ProgressBar ist
Der Balken rattert jetzt durch, solange die DB Abfrage dauert. Das klappt aber leider nur, wenn man das Fenster in Ruhe lässt.
Sobald es verschoben oder von einem anderen Fenster verdeckt wird, hängt der Balken wieder, wird also net neugezeichnet (?).
Hat einer eine Idee, wie man das idiotensicher gestalten könnte ??