Déplacer les controls de sa form avec la souris

Soyez le premier à donner votre avis sur cette source.

Vue 8 354 fois - Téléchargée 895 fois

Description

Un code pour bouger les controls de la form avec la souris.
Ca peut être utile pour la réalisation d'un jeu de puzzle, par exemple.

Source / Exemple :


Dim vary As Integer
Dim varx As Integer
Dim MouseDown As Boolean
Dim cliquex As Integer
Dim cliquey As Integer
 

'si on déplace la souris sur la feuille
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
'On récupere les coordonnées X et Y de la souris sur la feuille et on les stockes
varx = X
vary = Y
'on affiche les coordonnées
Text1.Text = varx
Text2.Text = vary
End Sub

'vérifie que le bouton de la souris est enfoncé sur label1
Private Sub Label1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
MouseDown = True
'on stocke la position où l'on a cliqué sur le control
cliquex = X
cliquey = Y
End Sub
'vérifie si le bouton de la souris est relaché sur label1
Private Sub label1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
MouseDown = False
End Sub

'si on déplace la souris sur label1
Private Sub label1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
'les coordonées de la souris sur la feuille sont
'coordonnées de label1 sur la form+coordonnées de la position de la souris sur label1
varx = Label1.Left + X
vary = Label1.Top + Y
Text1.Text = varx
Text2.Text = vary
'si on enfonce le bouton de la souris
If MouseDown = True Then
'on met le controle label1 à l'endroit où est la souris, moins la position où on a cliqué
Label1.Top = vary - cliquey
Label1.Left = varx - cliquex
End If
End Sub

Private Sub Text1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
'calcul de la position de la souris sur la form si on passe sur text1
varx = Text1.Left + X
vary = Text1.Top + Y
Text1.Text = varx
Text2.Text = vary
End Sub

Private Sub Text2_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
'calcul de la position de la souris sur la form si on passe sur text2
varx = Text1.Left + X
vary = Text1.Top + Y
Text1.Text = varx
Text2.Text = vary
End Sub

Conclusion :


Merci à http://www.vbfrance.com/codes/TROUVER-POSITION-SOURIS-CODE-SIMPLE_99.aspx

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Bodon Messages postés 2 Date d'inscription lundi 11 octobre 2004 Statut Membre Dernière intervention 10 septembre 2008
10 sept. 2008 à 15:30
C'est pile-poil ce que je cherchais. Merci !
hackalexandres32 Messages postés 37 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 3 novembre 2008 1
22 juin 2008 à 20:10
moi j'aime bien!
alcania Messages postés 19 Date d'inscription samedi 3 mai 2003 Statut Membre Dernière intervention 19 mars 2009
16 oct. 2006 à 18:15
j'ai fait aussi une recherche et le seul code qui me convient est le tiens, donc pour ma part, niquel et merci
cs_trotter Messages postés 16 Date d'inscription mardi 21 décembre 2004 Statut Membre Dernière intervention 24 mars 2009
21 juil. 2006 à 20:47
Ah, j'avais fait une recherche pourtant.
Tant pis.
Et puis ca n'avait évidemment pas la prétention de révolutionner quoique ce soit :o)
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
21 juil. 2006 à 17:03
Déjà vu des dizaines de fois sur le site....Rien de bien nouveau ni d'originale.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.