Utilise l'évenèment MouseMove. Il te donnera un objet de type MouseEventArgs, qui a deux propriétés : x et y.
Voici un exemple vite-fait (en VB.NET par contre, mais ce n'est pas très dur à convertir en C#) :
Déclare un objet point dans ton formulaire, genre :
Code :
- Private PreviousPoint As Point
|
Puis ton événements MouseMove :
Code :
- Private Sub Form1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseMove
- Dim CurrentPoint As Point = New Point(e.X, e.Y)
- Dim g As Graphics = Me.CreateGraphics
- g.DrawLine(New Pen(Color.Black), Me.PreviousPoint, CurrentPoint)
- g.Dispose()
- Me.PreviousPoint = CurrentPoint
- End Sub
|
Bien sûr il reste à vérifier par exemple qu'un des bouton de la souris soit enfoncé. Aussi, mon bout de code ne vaut que pour un formulaire, pour un contrôle il faut convertir le point en un point local avec PointToClient.