我有一个矩形,我用一个故事板将它旋转起来,就像汽车仪表上的针(英里每小时)。我想要做的是能够暂停它。此外,我还想在我想要的时候得到它的位置。例如,当它旋转到我指定的结束位置时,获取它的当前值。这可以做到吗?
我想要做的是用它来计算转速表,并根据mph故事板移动转速表指针。
DoubleAnimation da = new DoubleAnimation();
da.From = 0 * 6;
da.To = 60;
da.Duration = new Duration(TimeSpan.FromSeconds(5));
RotateTransform rt = new RotateTransform();
rt.CenterX = 35;
rt.CenterY = 0;
rec3.RenderTransform = rt;
rt.BeginAnimation(RotateTransform.AngleProperty, da);
DoubleAnimation tack = new DoubleAnimation();
tack.From = 0 * 6;
tack.To = 30;
tack.Duration = new Duration(TimeSpan.FromSeconds(5));
RotateTransform tackneedle = new RotateTransform();
tackneedle.CenterX = 30;
tackneedle.CenterY = 0;
rec4.RenderTransform = tackneedle;
tackneedle.BeginAnimation(RotateTransform.AngleProperty, tack);
发布于 2011-06-04 06:52:00
您可以将动画添加到故事板,这将允许您暂停和恢复动画。您还应该能够访问旋转变换并获得其中心值。
发布于 2011-06-04 06:58:28
一种不同的方式可能更合适:
创建一个计算/生成值的类。
将指针绑定到值(如果需要,可以使用值转换器从量到角)
这样,您可以更轻松地控制值,并且始终可以通过暂停值的生成来停止动画。
您必须考虑您需要什么:您是否需要知道动画的值,还是应该让指针跟随/显示该值?
https://stackoverflow.com/questions/6210400
复制相似问题