Le glisser-déposer manuel fonctionne comme le glisser-déposer automaitque, à trois différences près :
- La propriété DragMode doit être définie comme 0 - Manual.
- Le contrôle répond à un événement MouseDown avant le début du déplacement, de sorte que les coordonnées initiales du contrôle soient enregistrées.
- Le code est ajouté dans la procédure événementielle MouseDown.
Pour achever le glisser-déposer, la procédure événementielle MouseDown applique à l'objet la méthode Drag. Le code suivant déplace l'image à condition que la propriété DragMode du contrôle image soit définie comme 0 - Manual :
1 2 3 4 5 6 7
| Private Sub imgMouse_MouseDown(Button As Integer, Shift As Integer, _
X As Single, Y As Single)
' On a cliqué sur l'image.
txtMouse.Text = "On a cliqué sur l'image à la position " _
& X & ", " & Y
imgMouse.Drag
End Sub |
La méthode Drag autorise le glisser-déposer. Sans la méthode Drag, la procédure événementielle MouseDown() ne peut gérer l'opération. On se sert du glisser-déposer manuel pour imposer des restrictions au déplacement, avant et pendant l'opération.
Partager