Contrôle de la souris [Résolu]

Signaler
Messages postés
12
Date d'inscription
dimanche 30 mars 2003
Statut
Membre
Dernière intervention
21 août 2007
-
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
-
Salut à tous les développeurs de génie qui ont une idée ou du code en rapport avec mon problème:
Je souhaite contrôler le déplacement de la souris de façon logicielle sur un composant webbrowser
ou d'une manière plus générale sur l'écran(pb: aucune source, si ce n'est en vb ), contrôler ses clics, et aussi
connaitre la position de la souris et les clics effectués par l'utilisateur sur un webbrowser.
(le composant webbrowser n'a pas d'évenements MouseMove ou MouseDown )

Donc je cherche à : -Savoir ce qui ce passe à la souris sur ce composant
-Savoir comment contrôler la souris (mouvement et boutons) en C#

Si quelq'un à une solution en moins de 200 lignes je le remerciereais grandement ;)
Ah et si ça peut aider: j'utilise SharpDevelop...

P.S.: j'ai trouvé ça en VB,quelqu'un à une idée de ce que ça donne en C# ?

<DllImport("user32")> Public Shared Function SetCursorPos(ByVal x As int32, ByVal y As int32); As Integer;
<DllImport("user32")> Public Shared Function GetCursorPos(ByRef lpPoint As POINTAPI) As Integer;
<DllImport("user32")> Public Shared Sub mouse_event(ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long);

Merci beaucoup !

NSV Corp.: 3D world of applications

5 réponses

Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
30
Les évènements MouseMove, MouseDown ect.. sont accessibles lorqu'une page est chargée dans le navigateur via la propriété WebBrowser.Document.
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
30
Salut l'équivalent de Set/GetCursorPos en code managé c'est System.Windows.Forms.Cursor.Position.

mouse_event est une fonction de l'API Win32 que tu peux utiliser en C# avec un proptotype P/Invoke ou la fonction SendInput.


Et regardes ce code aussi :


http://www.csharpfr.com/codes/IMESSAGEFILTER-EVENEMENTS-MOUSEMOVE-MOUSEENTER-MOUSELEAVE-NIVEAU-CONTROLE-SANS_35443.aspx
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
30
Vlà le prototype P/Invoke de mouse_event :

[ DllImport( "USER32.dll" ) ]
private static extern void mouse_event( uint flags, uint x, uint y , uint data, UIntPtr extra );
Messages postés
12
Date d'inscription
dimanche 30 mars 2003
Statut
Membre
Dernière intervention
21 août 2007

Merci beaucoup j'essai ça...

NSV Corp.: 3D world of applications
Messages postés
12
Date d'inscription
dimanche 30 mars 2003
Statut
Membre
Dernière intervention
21 août 2007

Parfait ça avance:
je peux controler la souris et connaitre sa position,
connaitre les touches appuyées et simuler l'appui ;)
il ne me manque plus à présent que la surveillance des clics de la souris et leur simulation, en tout cas merci beaucoup Lutinore, j'ai bien avancé ;)
Si quelqu'un à une idée pour le reste...

NSV Corp.: 3D world of applications