我希望旋转包含图像的picturebox。图像只会在鼠标后面旋转,但是图像的位置是固定的。知道该怎么做吗?顺便说一句,在Windows 8上使用VisualStudio2012WindowsPhone应用程序。我在谷歌上做了一些研究,但其他代码来自VS2012,使用WinForm,但现在我不能使用它们的代码了。所以我希望我能在这里找到答案!
现在我有了这个
private void arrowHead_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
Duration Time_duration = new Duration(TimeSpan.FromSeconds(0.5));
Storyboard MyStory = new Storyboard();
MyStory.Duration = Time_duration;
DoubleAnimation My_Double = new DoubleAnimation();
My_Double.Duration = Time_duration;
MyStory.Children.Add(My_Double);
RotateTransform MyTransform = new RotateTransform();
Storyboard.SetTarget(My_Double, MyTransform);
Storyboard.SetTargetProperty(My_Double, new PropertyPath("Angle"));
My_Double.To = 15;
arrowHead.RenderTransform = MyTransform;
arrowHead.RenderTransformOrigin = new Point(0.5, 0.5);
//stackPanel1.Children.Add(image1);
MyStory.Begin();
}
这是我工作的打印屏幕。我想让红色箭头按我的鼠标移动。谢谢!
发布于 2013-06-26 20:28:15
您需要的是获得鼠标从某个参考点偏移的角度。我会这么做的。我不是C#开发人员,所以我不能给出这方面的代码,但我可以解释所涉及的原则:
(100, 80)
,而您的图像中心与(50, 50)
相同,则差异是(50, 30)
。StartAngle
。StartAngle
,而是从StartAngle中减去它。现在有了DeltaAngle
,旋转图像的时间和鼠标的当前位置之间的旋转差异。DeltaAngle
作为旋转度应用于图像。https://stackoverflow.com/questions/17310314
复制相似问题