olilefou
-
13 août 2001 à 17:49
LeCarto
Messages postés16Date d'inscriptionmardi 28 novembre 2000StatutMembreDernière intervention 6 juillet 2007
-
4 mai 2004 à 16:54
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
LeCarto
Messages postés16Date d'inscriptionmardi 28 novembre 2000StatutMembreDernière intervention 6 juillet 2007 4 mai 2004 à 16:54
Houla mais certainement, faites donc, moi j'ai juste posté ce code pour information, de toutes façons avec VB.Net c'est obsolète, merci d'avoir complété.
sauron1531
Messages postés1Date d'inscriptionvendredi 3 janvier 2003StatutMembreDernière intervention 4 mai 2004 4 mai 2004 à 16:30
Salut,
ton code est pas mal, il manque juste le controle pour définir oukélamouse à "out" . Je te conseille de mettre le code suivant à la ligne 42 du code de la form1:
If mPosX > (Form1.Width / Screen.TwipsPerPixelX) Or mPosX < 0 Or _
mPosY < 0 Or mPosY > (Form1.Height / Screen.TwipsPerPixelY) Then
oukélamouse = "Out" ' elle est dehors
Else
' ancien code
oukélamouse = "Form1" 'Valeur par défaut
End If
Renfield
Messages postés17287Date d'inscriptionmercredi 2 janvier 2002StatutModérateurDernière intervention27 septembre 202174 8 mai 2003 à 00:08
Salut. sympa , mais ton code est contraignant à utiliser. Beaucoup de code ( complexe : API ) est necessaire dans la Form. L'ideal, serait, selon moi, de faire faire le boulot directement par ton composant. :
tu lance le hook depuis le composant. ( ex : Wheel.Init / Wheel.Stop ) )
de plus, le composant cité dans le module , lorsque tu detectes un mouvement de la souris est ecris en dur, tu dois donc créer une fonction de hook par form ou les mouvements molette t'interessent.
pour ta variable oukélélamouse , tu peux utiliser l'API WindowFromPoint , qui renvoie le handle de la fenetre survolee....
petite optimisation algorithmique, encore , mieux vaux utiliser un select case , ou un if then.... elseif .... elseif.......end if , plutot que de mettre tant de conditions le unes sous les autres.
dans Form_Load , plutot qu'un goto laSuite , tu peux faire un Exit Sub.....
voila , c'est juste mon point de vue , si tu te dis que je suis un sale con, et que ton code est bien comme ca , libre a toi.... je dis ca pour t'aider.....
4 mai 2004 à 16:54
4 mai 2004 à 16:30
ton code est pas mal, il manque juste le controle pour définir oukélamouse à "out" . Je te conseille de mettre le code suivant à la ligne 42 du code de la form1:
If mPosX > (Form1.Width / Screen.TwipsPerPixelX) Or mPosX < 0 Or _
mPosY < 0 Or mPosY > (Form1.Height / Screen.TwipsPerPixelY) Then
oukélamouse = "Out" ' elle est dehors
Else
' ancien code
oukélamouse = "Form1" 'Valeur par défaut
End If
8 mai 2003 à 00:08
tu lance le hook depuis le composant. ( ex : Wheel.Init / Wheel.Stop ) )
de plus, le composant cité dans le module , lorsque tu detectes un mouvement de la souris est ecris en dur, tu dois donc créer une fonction de hook par form ou les mouvements molette t'interessent.
pour ta variable oukélélamouse , tu peux utiliser l'API WindowFromPoint , qui renvoie le handle de la fenetre survolee....
petite optimisation algorithmique, encore , mieux vaux utiliser un select case , ou un if then.... elseif .... elseif.......end if , plutot que de mettre tant de conditions le unes sous les autres.
dans Form_Load , plutot qu'un goto laSuite , tu peux faire un Exit Sub.....
voila , c'est juste mon point de vue , si tu te dis que je suis un sale con, et que ton code est bien comme ca , libre a toi.... je dis ca pour t'aider.....
4 oct. 2001 à 16:00
15 août 2001 à 19:11
15 août 2001 à 16:27
13 août 2001 à 20:22
non ca m'a l'air très pratique je range bien précieusement ce code :)
13 août 2001 à 17:49