窗口位置动画

时间:2011-11-05 16:34:23

标签: wpf vb.net xaml animation

我正试图为我的窗口位置设置动画。

SCENARIO : 我有一个窗口,当我点击我的按钮时,我希望窗口从它的当前位置平滑移动100px。

示例

Private Sub minimize_button_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles minimize_button.Click

    Dim windowsize as integer = window1.top
    windowsize = windowsize - 100

End Sub

但是使用 XAML 动画。我不知道如何在这种情况下制作这个动画。


感谢任何回答,真诚的VenoMDee。

2 个答案:

答案 0 :(得分:2)

我不相信你能用XAML动画做到这一点,但你仍然可以通过DispatcherTimer或Storyboard实现这个效果。

对于每个刻度(基于时间的帧),您可以在代码中重置窗口的位置。只需触发定时器的滴答声即可重现每秒约40帧(每150毫秒)。

希望有所帮助!

答案 1 :(得分:0)

这是一个更简单的解决方案:

如果你试图让你的动画流畅,你需要一个计时器,但对于每个计时器。你需要减少间隔,除非它是>屏幕高度。这将使它在目前的进一步加快。我之前使用过这种方法,动画非常好。

Timer1.Interval -= 1
Me.top = Me.Top * 1.05
If Me.Top > My.Computer.Screen.Bounds.Height Then
    Timer1.Enabled = False
End If

希望这有帮助!