Condividi tramite


Evento Shape.MouseMove

Si verifica quando il puntatore del mouse viene spostato sulla forma.

Spazio dei nomi:  Microsoft.VisualBasic.PowerPacks
Assembly:  Microsoft.VisualBasic.PowerPacks.Vs (in Microsoft.VisualBasic.PowerPacks.Vs.dll)

Sintassi

'Dichiarazione
<BrowsableAttribute(True)> _
Public Event MouseMove As MouseEventHandler
[BrowsableAttribute(true)]
public event MouseEventHandler MouseMove
[BrowsableAttribute(true)]
public:
 event MouseEventHandler^ MouseMove {
    void add (MouseEventHandler^ value);
    void remove (MouseEventHandler^ value);
}
[<BrowsableAttribute(true)>]
member MouseMove : IEvent<MouseEventHandler,
    MouseEventArgs>
JScript non supporta gli eventi.

Note

Gli eventi del mouse si verificano nell'ordine seguente:

MouseEnter

MouseMove

MouseHover / MouseDown / MouseWheel

MouseUp

MouseLeave

Per ulteriori informazioni su come gestire gli eventi, vedere Gestione e generazione di eventi.

Esempi

Nell'esempio seguente viene illustrato come utilizzare il MouseDown, MouseMove, e MouseUp gli eventi per disegnare linee in un RectangleShape controllo. Si suppone di disporre di un RectangleShape controllo denominato RectangleShape1 in un form.

Private mousePath = New System.Drawing.Drawing2D.GraphicsPath()

Private Sub RectangleShape2_MouseDown(
    ByVal sender As Object, 
     ByVal e As System.Windows.Forms.MouseEventArgs
  ) Handles RectangleShape2.MouseDown

    Dim mouseDownLocation As New Point(e.X + RectangleShape2.Left, 
      e.Y + RectangleShape2.Top)
    ' Clear the previous line.
    mousePath.Dispose()
    mousePath = New System.Drawing.Drawing2D.GraphicsPath()
    RectangleShape2.Invalidate()
    ' Add a line to the graphics path.
    mousePath.AddLine(mouseDownLocation, mouseDownLocation)
End Sub 

Private Sub RectangleShape2_MouseMove(
    ByVal sender As Object, 
    ByVal e As System.Windows.Forms.MouseEventArgs
  ) Handles RectangleShape2.MouseMove

    Dim mouseX As Integer = e.X + RectangleShape2.Left
    Dim mouseY As Integer = e.Y + RectangleShape2.Top
    ' Add a line to the graphics path.
    mousePath.AddLine(mouseX, mouseY, mouseX, mouseY)
End Sub 

Private Sub RectangleShape2_MouseUp(
    ByVal sender As Object, 
    ByVal e As System.Windows.Forms.MouseEventArgs
  ) Handles RectangleShape2.MouseUp

    Dim mouseUpLocation = New System.Drawing.Point(e.X + 
      RectangleShape2.Left, e.Y + RectangleShape2.Top)
    ' Add a line to the graphics path.
    mousePath.Addline(mouseUpLocation, mouseUpLocation)
    ' Force the shape to redraw.
    RectangleShape2.Invalidate()
End Sub 

Private Sub RectangleShape2_Paint(
    ByVal sender As Object, 
    ByVal e As System.Windows.Forms.PaintEventArgs
  ) Handles RectangleShape2.Paint

    ' Draw the line.
    e.Graphics.DrawPath(System.Drawing.Pens.DarkRed, mousePath)
End Sub
private System.Drawing.Drawing2D.GraphicsPath mousePath = 
    new System.Drawing.Drawing2D.GraphicsPath();

private void rectangleShape2_MouseDown(object sender, 
    System.Windows.Forms.MouseEventArgs e)
{
    Point mouseDownLocation = new Point(e.X + rectangleShape2.Left, 
        e.Y + rectangleShape2.Top);
    // Clear the previous line.
    mousePath.Dispose();
    mousePath = new System.Drawing.Drawing2D.GraphicsPath();
    rectangleShape2.Invalidate();
    // Add a line to the graphics path.
    mousePath.AddLine(mouseDownLocation, mouseDownLocation);
}

private void rectangleShape2_MouseMove(object sender, 
    System.Windows.Forms.MouseEventArgs e)
{
    int mouseX = e.X + rectangleShape2.Left;
    int mouseY = e.Y + rectangleShape2.Top;
    // Add a line to the graphics path.
    mousePath.AddLine(mouseX, mouseY, mouseX, mouseY);
}

private void rectangleShape2_MouseUp(object sender, 
    System.Windows.Forms.MouseEventArgs e)
{
    System.Drawing.Point mouseUpLocation = 
        new System.Drawing.Point(e.X + rectangleShape2.Left, 
            e.Y + rectangleShape2.Top);
    // Add a line to the graphics path.
    mousePath.AddLine(mouseUpLocation, mouseUpLocation);
    // Force the shape to redraw.
    rectangleShape2.Invalidate();
}

private void rectangleShape2_Paint(object sender, 
    System.Windows.Forms.PaintEventArgs e)
{
    // Draw the line.
    e.Graphics.DrawPath(System.Drawing.Pens.DarkRed, mousePath);
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

Shape Classe

Spazio dei nomi Microsoft.VisualBasic.PowerPacks

Altre risorse

Procedura: disegnare linee con il controllo LineShape (Visual Studio)

Procedura: disegnare forme con i controlli OvalShape e RectangleShape (Visual Studio)

Introduzione ai controlli Line e Shape (Visual Studio)