Recevoir l'évènement _mousemove sur des contrôles qui ne le retournent pas [module de classe]


Description

certains objets comme la combobox n'ont pas d'évènement souris.
en subclassant, le handle ne retourne que la zone "flèche", aucun évènement sur le reste de la zone

tout comme les shapes sur lesquelles on ne peut pas intervenir puisqu'elles n'ont pas de handle

voici donc une classe "bidouille" permettant de récupérer le _MouseMove, avec l'état des touches Shift Ctl Alt, ainsi que des boutons souris.
cette dernière partie utilise des fonctions DirectX

à vous de voir pour l'utilité, le code est commenté et assez facile à comprendre

Source / Exemple :


Set MM_Combo = New AfCls_MouseMove
With MM_Combo
    .Parent = Me
    .Object = Combo1
    .Timer = Timer1
    .StartHook
End With

Conclusion :


ce code pour répondre à une demande sur le forum :
http://www.vbfrance.com/infomsg_FAIRE-BOUGER-DYNAMIQUEMENT-COMBOBOX_1009004.aspx

si besoin d'autres évènements (HOVER LEAVE), pourquoi pas... ;)

Codes Sources

A voir également

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.