Deplacer la souris [Résolu]

dOsSpr0uTosS 91 Messages postés dimanche 22 mai 2005Date d'inscription 1 janvier 2006 Dernière intervention - 25 août 2005 à 22:32 - Dernière réponse : PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention
- 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
dOsSpr0uTosS 91 Messages postés dimanche 22 mai 2005Date d'inscription 1 janvier 2006 Dernière intervention - 25 août 2005 à 22:53
3
Merci
C'est bon j'ai declaré les long en integer et c'est nickel merci les gens

Merci dOsSpr0uTosS 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

Meilleure réponse
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 26 août 2005 à 00:41
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

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 93 internautes ce mois-ci

cs_hassen 338 Messages postés mardi 28 janvier 2003Date d'inscription 4 novembre 2008 Dernière intervention - 25 août 2005 à 22:35
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
cs_CanisLupus 3758 Messages postés mardi 23 septembre 2003Date d'inscription 13 mars 2006 Dernière intervention - 25 août 2005 à 22:43
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 !?
dOsSpr0uTosS 91 Messages postés dimanche 22 mai 2005Date d'inscription 1 janvier 2006 Dernière intervention - 25 août 2005 à 22:43
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"
cs_CanisLupus 3758 Messages postés mardi 23 septembre 2003Date d'inscription 13 mars 2006 Dernière intervention - 25 août 2005 à 22:45
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 !?
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 25 août 2005 à 22:48
0
Merci
je crois qu'il faut déclarer les Long en Integer sous VB 2005
PCPT
cs_hassen 338 Messages postés mardi 28 janvier 2003Date d'inscription 4 novembre 2008 Dernière intervention - 25 août 2005 à 22:48
0
Merci
ca ne fait rien ca m'ai arrivé pas mal de fois

Hassen TUNISIE
cs_CanisLupus 3758 Messages postés mardi 23 septembre 2003Date d'inscription 13 mars 2006 Dernière intervention - 25 août 2005 à 22:49
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 !?
dOsSpr0uTosS 91 Messages postés dimanche 22 mai 2005Date d'inscription 1 janvier 2006 Dernière intervention - 25 août 2005 à 22:50
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
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 25 août 2005 à 22:55
0
Merci
j'me disais aussi...
PCPT
dOsSpr0uTosS 91 Messages postés dimanche 22 mai 2005Date d'inscription 1 janvier 2006 Dernière intervention - 25 août 2005 à 22:58
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 ^^
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 25 août 2005 à 23:16
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
dOsSpr0uTosS 91 Messages postés dimanche 22 mai 2005Date d'inscription 1 janvier 2006 Dernière intervention - 25 août 2005 à 23:21
0
Merci
J'ai pas tout compris et puis c'est quoi mouse mouve?
Et sinon ca serait possible que sur la form non?
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 25 août 2005 à 23:41
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
dOsSpr0uTosS 91 Messages postés dimanche 22 mai 2005Date d'inscription 1 janvier 2006 Dernière intervention - 25 août 2005 à 23:51
0
Merci
J'ai un peu regardé et je trouve pas de mouse mouve mais bon c'est pas grave merci quand meme
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 25 août 2005 à 23:58
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
dOsSpr0uTosS 91 Messages postés dimanche 22 mai 2005Date d'inscription 1 janvier 2006 Dernière intervention - 26 août 2005 à 00:19
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?
PCPT 13368 Messages postés lundi 13 décembre 2004Date d'inscription 3 février 2018 Dernière intervention - 26 août 2005 à 00:21
0
Merci
mes précédents posts sont là pour en témoigner
PCPT
dOsSpr0uTosS 91 Messages postés dimanche 22 mai 2005Date d'inscription 1 janvier 2006 Dernière intervention - 26 août 2005 à 00:31
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.