当鼠标到达点的位置时移动随机对象

本文关键字:移动 随机 对象 位置 鼠标 | 更新日期: 2023-09-27 18:31:04

我正在尝试在画布上生成随机点。所以我想让屏幕上的随机点移动到一个新的随机位置,当鼠标触摸它时。我该怎么做??任何鼠标事件都不会发生这种情况。如能举个例子,将不胜感激。

当鼠标到达点的位置时移动随机对象

好吧,

您可以使用矩形附加MouseMove事件,并在此事件中处理矩形的随机定位。

更新参考此链接中的答案 - 在画布周围移动矩形。您需要以这种方式更新添加点击事件 -

    private void Add_Click(object sender, RoutedEventArgs e)
    {
        Point newPoint;
        Rectangle rectangle;
        newPoint = GetRandomPoint();
        rectangle = new Rectangle {Width = 4, Height = 4, Fill = Brushes.Red};
        rectangle.MouseMove += new MouseEventHandler(rectangle_MouseMove);
        m_Points.Add(newPoint);
        PointCanvas.Children.Add(rectangle);
        Canvas.SetTop(rectangle,newPoint.Y);
        Canvas.SetLeft(rectangle,newPoint.X);
    }
    void rectangle_MouseMove(object sender, MouseEventArgs e)
    {
        Rectangle rectangle = sender as Rectangle;
        Point newPoint;
        newPoint = GetRandomPoint();
        Canvas.SetTop(rectangle, newPoint.Y);
        Canvas.SetLeft(rectangle, newPoint.X);
    }

当我们创建它时,我已经用矩形附加了 MouseMove 事件,然后在此事件中随机移动矩形。希望这对你有帮助!!