1

キャンバス上にランダムな点を生成しようとしています。そのため、マウスがタッチしたときに、画面上のランダムなポイントを新しいランダムな場所に移動したいと考えています。どうすればいいですか?? これは、どのマウス イベントでも発生しません。例をいただければ幸いです。

4

1 に答える 1

1

MouseMove イベントを四角形にアタッチし、このイベントで四角形のランダムな配置を処理できます。

更新 このリンクの回答を参照してください -キャンバスの周りに四角形を移動します。この方法で Add Click イベントを更新する必要があります -

    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 イベントをアタッチし、このイベントで長方形をランダムに移動します。これがお役に立てば幸いです!!

于 2012-04-15T07:19:09.960 に答える