|
Imports Bornander.UI.Animations.Animators
Namespace Panels
Public Class AnimatedStackPanel
Inherits StackPanel
Private animationBase As AnimationBase = New AnimationBase()
Private animator As IArrangeAnimator
Private lastArrange As DateTime
Public Sub New()
animationBase.CreateAnimationTimer(Me, TimeSpan.FromSeconds(0.05))
animator = New FractionDistanceAnimator(0.1)
End Sub
Public Sub New(ByVal animator As IArrangeAnimator, ByVal animationInterval As TimeSpan)
animationBase.CreateAnimationTimer(Me, animationInterval)
Me.animator = animator
End Sub
Protected Overrides Function ArrangeOverride(ByVal arrangeSize As Size) As Size
Dim size As Size = MyBase.ArrangeOverride(arrangeSize)
animationBase.Arrange(Math.Max(0, (DateTime.Now - lastArrange).TotalSeconds), Children, animator)
lastArrange = DateTime.Now
Return size
End Function
End Class
End Namespace
|
By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.
If a file you wish to view isn't highlighted, and is a text file (not binary), please
let us know and we'll add colourisation support for it.
Article videos
Oakmead Apps Android Games
21 Feb 2014: Best VB.NET Article of January 2014 - Second Prize
18 Oct 2013: Best VB.NET article of September 2013
23 Jun 2012: Best C++ article of May 2012
20 Apr 2012: Best VB.NET article of March 2012
22 Feb 2010: Best overall article of January 2010
22 Feb 2010: Best C# article of January 2010