TESTER SI LA SOURIS A VRAIMENT QUITTER UN CONTROL : MOUSELEAVE

Signaler
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
-
Mokost
Messages postés
48
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
29 mars 2010
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/50598-tester-si-la-souris-a-vraiment-quitter-un-control-mouseleave

Mokost
Messages postés
48
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
29 mars 2010

En fait j'ai pensé à : dans le MouseLeave de l'enfant tu teste si tu es sur le parent ou sur un de ses enfants, si oui tu ne le masque pas si non tu le masque ^^
Mokost
Messages postés
48
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
29 mars 2010

Dans ce cas, pourquoi ne pas utiliser le MouseLeave du contrôle enfant ?
Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
29
Si le curseur se trouve déja sur un contrôle enfant et quitte le panel sans entrer de nouveau dans le panel, l'évènement MouseLeave ne sera pas déclenché, c'est pour ça que tu vois des solutions qui utilisent un hook, ou un filtre de messages.
Mokost
Messages postés
48
Date d'inscription
jeudi 18 décembre 2003
Statut
Membre
Dernière intervention
29 mars 2010

Lutinore, ce code permettrait* de masquer le panneau quand la souris quitte vraiment celui, c'est à dire qu'elle n'est plus sur un aucun contrôle enfant non plus.

*permettrait car pour cela il faudrait mettre ce code plutôt:
if(child == null)
panel1.visible = false; //masque le panneau
Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
29
Mais avec ce code comment masques tu le Panel lorsque la souris quitte le contrôle enfant !?