@xd-franky-5 Nein, denn dann musst Du das Handling an den Controls in den MainThread invoken, das sollte nicht erforderlich sein.
Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch
Ein guter .NET-Snippetkonverter(der ist verfügbar). Programmierfragen über PN / Konversation werden ignoriert!
@RodFromGermany Kann ich auch zwei Tasks parallel laufen lassen ?
Hier mal bisschen Code:
VB.NET-Quellcode
Private Async Function LoadSlide() As Task
Await FadeSlide()
UpdateSlider()
scr =-widths
Dim i AsDouble=1
DoWhile scr <0
scr =-CInt(widths * (1- Math.Sqrt(1- i ^2)))
If i >0Then i -=0.1
Await Task.Delay(25)
Loop
loading =False
EndFunction
Private Async Function UnloadSlide() As Task
Await UnfadeSlide()
Dim i AsDouble=0
DoWhile scr < Width
scr =CInt(Width * (1- Math.Sqrt(1- i ^2)))
If i <1Then i +=0.1
Await Task.Delay(25)
Loop
loading =False
RaiseEvent ImagesUnloaded()
EndFunction
Private Async Function FadeSlide() As Task
opacity =0
Dim i AsDouble=0
DoWhile opacity <100
opacity =CInt(100* (1- Math.Sqrt(1- i ^2)))
If i <1Then i +=0.2
UpdateSlider()
Await Task.Delay(10)
Loop
EndFunction
Private Async Function UnfadeSlide() As Task
Dim i AsDouble=1
DoWhile opacity >0
opacity =CInt(100* (1- Math.Sqrt(1- i ^2)))
If i >0Then i -=0.1
UpdateSlider()
Await Task.Delay(10)
Loop
EndFunction
Wobei LoadSlide, das Bild reinslidet, mit der bekannten Formel und FadeSlide das Bild einblendet. UnloadSlide und UnfadeSlide bewirken jeweils das Gegenteil.
Die Zahl ist praktisch beliebig hoch, jedoch in der Performance an die Zahl der Prozessorkerne gebunden.
Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch
Ein guter .NET-Snippetkonverter(der ist verfügbar). Programmierfragen über PN / Konversation werden ignoriert!