none
Evenement Mousemove déclenché sur la totalité du Form RRS feed

  • Question

  • Bonjour,

    Je souhaite afficher, en permanence, les coordonnées de la souris sur mon application. Le problème est le suivant :

    Sub AffCoordSouris Handles MyBase.MouseMove

         Afichage des coordonnées

    End sub

    fonctionne sur le form tant que la souris ne passe pas sur un contrôle. En revanche, au dessus des contrôles l'évènement n'est pas déclenché.

    Y a t'il un moyen de faire en sorte que l'évènement s'applique à la totalité des controles contenus dans le form sans être obligé de tous les lister dans la Sub ?

    mercredi 10 juillet 2013 07:20

Réponses

  • Merci pour cette suggestion. C'est une solution que j'ai effectivement mise en oeuvre faute de pouvoir utiliser mousemove. Je trouve que c'est un peu un bricolage à la Mac Gyver mais ca fonctionne et, après tout, pourquoi chercher à réinventer la roue ^^
    • Marqué comme réponse mag2013 mercredi 10 juillet 2013 13:06
    • Non marqué comme réponse mag2013 mercredi 10 juillet 2013 13:06
    • Marqué comme réponse mag2013 mercredi 10 juillet 2013 13:06
    mercredi 10 juillet 2013 11:00

Toutes les réponses

  • Bonjour mag2013,

    Une solution serait d'utiliser MousePosition associé à un Timer

    A adapter éventuellement pour prendre en compte en compte barre de titre et bordures (MouseMove renvoie les coordonnées de la zone client de la feuille) :

        Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
            ' Vérifie que la souris est à l'intérieur de la feuille
            If MousePosition.X >= Me.Left And _
                MousePosition.X <= Me.Left + Me.Width And _
                MousePosition.Y >= Me.Top And _
                MousePosition.Y <= Me.Top + Me.Height Then
                Me.Label1.Text = MousePosition.X - Me.Left & " - " & MousePosition.Y - Me.Top
            End If
        End Sub


    Cordialement, Jacques

    mercredi 10 juillet 2013 09:49
  • Merci pour cette suggestion. C'est une solution que j'ai effectivement mise en oeuvre faute de pouvoir utiliser mousemove. Je trouve que c'est un peu un bricolage à la Mac Gyver mais ca fonctionne et, après tout, pourquoi chercher à réinventer la roue ^^
    • Marqué comme réponse mag2013 mercredi 10 juillet 2013 13:06
    • Non marqué comme réponse mag2013 mercredi 10 juillet 2013 13:06
    • Marqué comme réponse mag2013 mercredi 10 juillet 2013 13:06
    mercredi 10 juillet 2013 11:00