renocmoa
Messages postés134Date d'inscriptionmardi 7 septembre 2004StatutMembreDernière intervention10 mai 2012
-
3 déc. 2006 à 17:58
renocmoa
Messages postés134Date d'inscriptionmardi 7 septembre 2004StatutMembreDernière intervention10 mai 2012
-
5 déc. 2006 à 12:17
Bonsoir,
Je voudrais savoir comment obtenir que les evenements souris (leav, hover...) soit utilisable avec un user control. En effet, par exemple avec hover l'evenement ne se déclenche que lorsque la souris passe sur l'usercontrol lui même et pas sur ses controles enfants...
j'ai essayer de voir avec addhandler sur tous ses controles, mais quel addressOf la sub OnMousHover n'ayant pas la même signature et s'il contient beaucoup de controle comment faire...
nbaduraux
Messages postés24Date d'inscriptionjeudi 31 mars 2005StatutMembreDernière intervention15 septembre 2017 4 déc. 2006 à 14:36
Personnellement, je ne connais pas d'autre méthode que de d'implémenter l'événement souris pour chacun des controles enfants et de lui faire déclencher l'événement du controle utilisateur parent.
Pour illustrer mon propos, voici un exemple de déclenchement de l'événement MouseHover d'un controle utilisateur wucTest
comportant un label Label1
et un picturebox PictureBox1
:
Public
Class wucTest
'déclaration de l'événement souris du contrôle utilisateur parent wucTest
Public
Shadows
Event MouseHover(
ByVal sender
As
Object,
ByVal e
As System.EventArgs)
'déclenchement de l'événement du contrôle utilisateur par chaque contrôle enfant
Private
Sub Label1_MouseHover(
ByVal sender
As
Object,
ByVal e
As System.EventArgs)
Handles Label1.MouseHover
RaiseEvent MouseHover(
Me, e)
End
Sub
Private
Sub PictureBox1_MouseHover(
ByVal sender
As
Object,
ByVal e
As System.EventArgs)
Handles PictureBox1.MouseHover
renocmoa
Messages postés134Date d'inscriptionmardi 7 septembre 2004StatutMembreDernière intervention10 mai 2012 4 déc. 2006 à 18:56
De plus mes controle sont ajoutés par code, j'utilise donc AddHandler.
J'ai le même soucis en fait et surtout pour MouseLeave puisque l'évenement se déclenche aussi quand la souris sort de Label1 pour entrer sur PictureBox1 alors qu'elle n'est pas sortie de l'usercontrol.... donc Pb
reno
Vous n’avez pas trouvé la réponse que vous recherchez ?
nbaduraux
Messages postés24Date d'inscriptionjeudi 31 mars 2005StatutMembreDernière intervention15 septembre 2017 5 déc. 2006 à 08:40
C'est vrai que la gestion des événements peut devenir très compliqué, surtout s'il y a bcp de contrôles, et il faut arbitrer ...! Un autre truc qu'il m'arrive d'utiliser, si ton contrôle gère principalement de l'affichage, c'est d'ajouter un panel transparent au premier plan de ton contrôle utilisateur. Et c'est lui qui récupèrera tous les événements souris. Là c'est vraiment plus simple, mais ça dépend des fonctionnalités de ton contrôle.