Position curseur sur PictureBox [Résolu]

cs_JLuc01 208 Messages postés samedi 17 janvier 2009Date d'inscription 5 mars 2013 Dernière intervention - 11 janv. 2013 à 21:31 - Dernière réponse : cs_JLuc01 208 Messages postés samedi 17 janvier 2009Date d'inscription 5 mars 2013 Dernière intervention
- 11 janv. 2013 à 23:16
Bonsoir,

Je cherche a comprendre pourquoi ce morceau de code ne marche pas:
If PictureBox.Bounds.Contains(e.X, e.Y) Then
     Variable = True
End If


Alors que celui-ci marche correctement:
If Rectangle.Contains(e.X, e.Y) Then
     Variable =  True
End If


Par "marcher" , je sous-entend que la Variable dans la boucle prend la valeur TRUE lorsque le curseur se trouve soit sur la PictureBox ou soit sur le Rectangle.

Pour precision, cette boucle IF THEN ELSE ENDIF se trouve dans l'evenement Form1_MouseMove.

De plus, si je met 2 Labels sur la Form1 avec le code suivant:
Label1.Text  = CStr(e.X)
Label2.Text = CStr(e.Y)


Je peux voir la position de mon curseur quand je bouge la souris sur la Form1 ou a l'interieur du Rectangle, mais la valeur ne change plus lorsque je suis sur la PictureBox.
En posant la question differement, comment puis-je voir/recuperer la position (ou coordonnees X et Y) quand mon curseur se trouve sur la PictureBox?

En esperant avoir exposer mon probleme clairement, merci.

A+
JLuc01
Afficher la suite 

3 réponses

Répondre au sujet
Utilisateur anonyme - 11 janv. 2013 à 22:15
+3
Utile
Ou utiliser simplement l'événement MouseMove de ton picturebox
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Utilisateur anonyme
Utilisateur anonyme - 11 janv. 2013 à 22:06
+1
Utile
Bonsoir,

Tu peux 'concentrer' tous les événements MouseMove de tous tes contrôles sur la même procédure :
AddHandler Me.MouseMove, AddressOf MM
AddHandler PictureBox1.MouseMove, AddressOf MM
AddHandler ....

Et ensuite lire la position du curseur (ta souris) par rapport à l'écran :
Private Sub MM(ByVal sender As Object, ByVal e As MouseEventArgs)
        Debug.Print(String.Format("position x :{0}  position y :{1}", Cursor.Position.X, Cursor.Position.Y))
End Sub


Une simple transposition position fenêtre par rapport à l'écran te donneront les coordonnées fenêtre.
Commenter la réponse de Utilisateur anonyme
cs_JLuc01 208 Messages postés samedi 17 janvier 2009Date d'inscription 5 mars 2013 Dernière intervention - 11 janv. 2013 à 23:16
0
Utile
Re-bonsoir,

Impeccable! Je comprend mieux mon probleme.
Ce n'etait pourtant pas bien complique. J'aurais du y penser.
Merci encore.

A+
JLuc01
Commenter la réponse de cs_JLuc01

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.