Deplacer la souris [Résolu]

Messages postés
91
Date d'inscription
dimanche 22 mai 2005
Dernière intervention
1 janvier 2006
- - Dernière réponse : PCPT
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
- 26 août 2005 à 00:41
Salut,

Je sais que ce sujet a deja ete abordé mais j'ai fais plusieur recherche et je n'ai pas trouvé de réponses très claire...

Donc voila tout est dans le titre je voudrais savoir comment deplacer la souris.

merci d'avance
Afficher la suite 

20 réponses

Meilleure réponse
Messages postés
91
Date d'inscription
dimanche 22 mai 2005
Dernière intervention
1 janvier 2006
3
Merci
C'est bon j'ai declaré les long en integer et c'est nickel merci les gens

Merci dOsSpr0uTosS 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
3
Merci
j'avais bien compris.....
(si j'ai pas répondu, c'est simplement que si déjà, mon FormMouseMove t'est inconnu en VB2005, c'est pas des "vrais" codes sous VB6 qui vont t'aider. désolé)
PCPT

Merci PCPT 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 97 internautes ce mois-ci

Messages postés
338
Date d'inscription
mardi 28 janvier 2003
Dernière intervention
4 novembre 2008
0
Merci
Private Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)
Private Declare Function SetCursorPos& Lib "user32" (ByVal X As Long, ByVal Y As Long)

Const MOUSEEVENTF_ABSOLUTE = &H8000
Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
Const MOUSEEVENTF_MIDDLEDOWN = &H20
Const MOUSEEVENTF_MIDDLEUP = &H40
Const MOUSEEVENTF_MOVE = &H1
Const MOUSEEVENTF_RIGHTDOWN = &H8
Const MOUSEEVENTF_RIGHTUP = &H10
Const MOUSEEVENTF_WHEEL = &H80
Const MOUSEEVENTF_XDOWN = &H100
Const MOUSEEVENTF_XUP = &H200
Const WHEEL_DELTA = 120
Const XBUTTON1 = &H1
Const XBUTTON2 = &H2

Private Sub Command1_Click()
X = 30
Y = 755
'position de la souris au coordonnée X et Y
'(ici si vous êtes en 1024 x 768,cela va cliquer sur le bouton 'Démarrer' de la barre des taches)
SetCursorPos X, Y
'Le bouton gauche de la souris s'enfonce
Call mouse_event(MOUSEEVENTF_LEFTDOWN + MOUSEEVENTF_ABSOLUTE, Me.Left, Me.Top, 0, 0) '
'le bouton gauche de la souris se relache
Call mouse_event(MOUSEEVENTF_LEFTUP + MOUSEEVENTF_ABSOLUTE, Me.Left, Me.Top, 0, 0)
End Sub

Hassen TUNISIE
Messages postés
3758
Date d'inscription
mardi 23 septembre 2003
Dernière intervention
13 mars 2006
0
Merci
Salut, pourtant il y a ce qu'il faut sur le forum et dans les sources du site.

En vb6, une api dans un module :
Public Declare Function SetCursorPos Lib "user32" _
( _
ByVal X As Long, _
ByVal Y As Long _
) As Long

qu'on utilise comme ça :
Call SetCursorPos(position_x, position_y)

position_x et position_y sont en pixel. Pour une résolution de 800/600,
Call SetCursorPos(400, 300)
te met le curseur au milieu de l'écran.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
Messages postés
91
Date d'inscription
dimanche 22 mai 2005
Dernière intervention
1 janvier 2006
0
Merci
Merci mais il y a deux trois erreurs apparament sur ma version(je suis sur la beta 2005^^).Donc il me signale des erreurs a :
Private sub
X et Y
SetCursorPos(X, Y)
mouse_event(MOUSEEVENTF_LEFTDOWN + MOUSEEVENTF_ABSOLUTE

mouse_event(MOUSEEVENTF_LEFTUP + MOUSEEVENTF_ABSOLUT
Aux "me" et aux "Declare"
Messages postés
3758
Date d'inscription
mardi 23 septembre 2003
Dernière intervention
13 mars 2006
0
Merci
Hassen > désolé, ta réponse n'était pas affichée quand j'ai posté la mienne.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
0
Merci
je crois qu'il faut déclarer les Long en Integer sous VB 2005
PCPT
Messages postés
338
Date d'inscription
mardi 28 janvier 2003
Dernière intervention
4 novembre 2008
0
Merci
ca ne fait rien ca m'ai arrivé pas mal de fois

Hassen TUNISIE
Messages postés
3758
Date d'inscription
mardi 23 septembre 2003
Dernière intervention
13 mars 2006
0
Merci
OK, puisque c'est du vb.net, va voir de ce côté :

System.Windows.Forms.Cursor.Current.Position

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
Messages postés
91
Date d'inscription
dimanche 22 mai 2005
Dernière intervention
1 janvier 2006
0
Merci
Module Module1


Public
declare
Function SetCursorPos
Lib
"user32" (
ByVal X
As
Long, _
ByVal Y
As
Long _)
As
Long



Sub Main()



Call SetCursorPos(30, 60)



End
Sub


End
Module
Quand je met ca il signale comme erreur 60 oO
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
0
Merci
j'me disais aussi...
PCPT
Messages postés
91
Date d'inscription
dimanche 22 mai 2005
Dernière intervention
1 janvier 2006
0
Merci
Ah j'ai une autre question comment fair (cette fois dans un form) que
si la souris est a tel endroit alors elle va a tel endroit : un truc du
style

if mouse.top "" then mouse.top mouse.top +50

enfin j'imagines que c'est pas ca mais c'est pour vous donne une idée ^^
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
0
Merci
ouai, c'est pas çà du tout même.
là il faut capturer le mouvement de la souris, ce qui empêchera le click.
mieux vaut mettre par exemple sur la Form Mouse mouve
si X < HorsDeMaZoneMinX et X > HorsDeMaZoneMaxX pareil avec Y, et là tu la bouges.

PCPT
Messages postés
91
Date d'inscription
dimanche 22 mai 2005
Dernière intervention
1 janvier 2006
0
Merci
J'ai pas tout compris et puis c'est quoi mouse mouve?
Et sinon ca serait possible que sur la form non?
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
0
Merci
le MouseMove, sur la Form (espérant que çà existe, je suis sous VB6) renvoie les coordonnées de la souris.
donc dans le déplacement, tu peux très bien choisir une zone (genre entre 50<X<100 200<Y<400).
si la souris est dans cet équart, SetCurPos (outuveux)

PCPT
Messages postés
91
Date d'inscription
dimanche 22 mai 2005
Dernière intervention
1 janvier 2006
0
Merci
J'ai un peu regardé et je trouve pas de mouse mouve mais bon c'est pas grave merci quand meme
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
0
Merci
l'évènement Form_MouseMove( Button Shift X Y) existe sous VB6. je doute qu'il n'existe pas sous 2005, c'est sans doute la syntaxe qui doit légèrement changer.
sinon, même principe, un label transparent sans caption à l'endroit voulu, et si la souris le survol, blablabla...

PCPT
Messages postés
91
Date d'inscription
dimanche 22 mai 2005
Dernière intervention
1 janvier 2006
0
Merci
Ok je vais laissé tomber parce que la ca me soule de trouver la bonne syntax etc...

Sinon autre question tu sais taper des touches du clavier?
Messages postés
13368
Date d'inscription
lundi 13 décembre 2004
Dernière intervention
3 février 2018
0
Merci
mes précédents posts sont là pour en témoigner
PCPT
Messages postés
91
Date d'inscription
dimanche 22 mai 2005
Dernière intervention
1 janvier 2006
0
Merci
Héhé pas mal mais par "Sinon autre question tu sais taper des touches du clavier?"j'te demandais si tu connaissais le code pour fair taper la touche n°31(par exemple).

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.