Page 1 sur 1

[R] Mouseclick special

Posté : mar. 09 févr. 2010 15:27
par pop45
Voila j'aimerais savoir si quelqun sait comment faire pour dire "je veut que la sourris clic 37 pixel plus haut et 57 pixel a gauche"

Esque c'est possible
j'ai chercher chez moi mais j'ai pas trouver alors je demande votre aide

merci d'avance

Re: [..]mouseclick special

Posté : mar. 09 févr. 2010 20:15
par Narmeke
Position de la souris + La valeur !

Normalement sa devrait fonctionner. Je ne peux pas te proposer de code car très peu de temps...
Globalement, tu récupère la position de ta souris puis tu ajoute (ou enlève) le nombre de pixels a la valeurs X ou Y de la position actuel de la souris.

Je pense que sur l'axe X ou Y (de la souris), 1 = 1 pixel

Re: [..]mouseclick special

Posté : mer. 10 févr. 2010 10:20
par pop45
c'est possible que quelqu'un propose un code parce que la vraiment je vois pas :?

Re: [..] Mouseclick special

Posté : mer. 10 févr. 2010 14:12
par Tlem
Heuuu la franchement, il y à de l'abus.

On vous dit de récupérer les coordonnées de la souris, donc regardez dans la doc une commande qui fait ca ...
Ca devrait quand même pas être trop difficile :
- Souris = Mouse
- Obtenir = Get
:roll:

Ensuite il ne vous reste qu'à faire une addition sur les coordonnées puis de placer la souris aux nouvelles coordonnées :
- Souris = Mouse
- Déplacer = Move

Avec les exemples de la doc, vous n'avez pas d'excuse. :evil:

Re: [..] Mouseclick special

Posté : mer. 10 févr. 2010 14:32
par Narmeke
Bon, comme je suis sympa :
Ce code t'aideras...

Tous est dans l'aide (help) de Scite.
Suffit de chercher un minimum !

Code : Tout sélectionner

#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.0.0
 Author:         Narmeke

 Script Function:
    Mouse pixel, jouer avec votre souris !! =)

#ce ----------------------------------------------------------------------------

;Début des includes
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Include <Misc.au3> ;Pour enregistrer les coor de la souris
;Fin des includes


$WINDOWS = GUICreate("Mouse pixels", 308, 344, 494, 197)
$texte1 = GUICtrlCreateLabel("Mouse Pixels", 56, 16, 203, 41)
GUICtrlSetFont(-1, 24, 800, 0, "MS Sans Serif")
$texte2 = GUICtrlCreateLabel("Coordonnées :", 16, 96, 73, 17)
$INPUT_COOR_X = GUICtrlCreateInput("0", 104, 94, 65, 21, BitOR($ES_RIGHT,$ES_AUTOHSCROLL,$ES_READONLY,$ES_NUMBER))
$texte3 = GUICtrlCreateLabel("X", 176, 96, 11, 17)
$INPUT_COOR_Y = GUICtrlCreateInput("0", 202, 94, 65, 21, BitOR($ES_RIGHT,$ES_AUTOHSCROLL,$ES_READONLY,$ES_NUMBER))
$texte4 = GUICtrlCreateLabel("Y", 271, 96, 11, 17)
$Label5 = GUICtrlCreateLabel("Action :", 16, 136, 40, 17)
$COMBO_ACTIONS = GUICtrlCreateCombo("Cliquer", 104, 134, 129, 25, BitOR($CBS_DROPDOWNLIST,$CBS_AUTOHSCROLL))
GUICtrlSetData(-1, "Déplacer")
$texte5 = GUICtrlCreateLabel("Ajout pixels :", 16, 184, 63, 17)
$INPUT_AJOUTS_X = GUICtrlCreateInput("0", 106, 183, 65, 21, BitOR($ES_RIGHT,$ES_AUTOHSCROLL,$ES_NUMBER))
$texte6 = GUICtrlCreateLabel("X", 178, 185, 11, 17)
$INPUT_AJOUTS_Y = GUICtrlCreateInput("0", 204, 183, 65, 21, BitOR($ES_RIGHT,$ES_AUTOHSCROLL,$ES_NUMBER))
$Label8 = GUICtrlCreateLabel("Y", 273, 185, 11, 17)
$BOUTTON_RUN = GUICtrlCreateButton("Lancer", 16, 288, 281, 17, $WS_GROUP)
$texte7 = GUICtrlCreateLabel("Timer :", 16, 224, 36, 17)
$INPUT_TIMER = GUICtrlCreateInput("0", 105, 225, 65, 21, BitOR($ES_RIGHT,$ES_AUTOHSCROLL,$ES_NUMBER))
$texte8 = GUICtrlCreateLabel("secondes", 176, 228, 50, 17)
$BOUTTON_EXIT = GUICtrlCreateButton("Exit", 16, 310, 281, 17, $WS_GROUP)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1 ;Début de boucle
If _IsPressed(02) Then ;Si un Clique droit est effectué
    $MOUSE_POS_X = MouseGetPos(0) ;On stock la position X de la souris dans une variable
    $MOUSE_POS_Y = MouseGetPos(1) ;On stock la position Y de la souris dans une variable
    GUICtrlSetData($INPUT_COOR_X, $MOUSE_POS_X) ;Puis on affiche la position X dans une Input
    GUICtrlSetData($INPUT_COOR_y, $MOUSE_POS_y) ;Puis on affiche la position Y dans une Input
EndIf ;Fin de la condition

    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit ;Pour quitter le script
        Case $BOUTTON_EXIT
            Exit ;Pour quitter le script
        Case $BOUTTON_RUN
            $V_ACTION = GUICtrlRead($COMBO_ACTIONS) ;Lecture de la combo
            If $V_ACTION = "Cliquer" Then
                $ACTE = 1 ;Si clique on attribut la valeur 1
            ElseIf $V_ACTION = "Déplacer" Then
                $ACTE = 0 ;Si déplacer on attribut la valeur 0
            EndIf

            $READ_X = GUICtrlRead($INPUT_COOR_X) ;Lecture des coordonnées X
            $READ_Y = GUICtrlRead($INPUT_COOR_Y) ;Lecture des coordonnées Y
            $AJOU_X = GUICtrlRead($INPUT_AJOUTS_X) ;Lecture des pixels X à ajouter
            $AJOU_Y = GUICtrlRead($INPUT_AJOUTS_Y) ;Lecture des pixels Y à ajouter
            $VALEUR_X = $READ_X + $AJOU_X ;Valeur Final de X
            $VALEUR_Y = $READ_Y + $AJOU_Y ;Valeur Final de Y

            $READ_T = GUICtrlRead($INPUT_TIMER) ;Lecture du Timer
            If $READ_T = "" Then ;Si le champ est vide on lui attribut une valeur par défaut ici 1 seconde
                $TIMER = "1000"  ;1000 = 1 seconde
            Else ;Sinon
                $TIMER = $READ_T * 1000 ;On attribut la valeur entrée par l'utimlisateur
            EndIf

            Sleep($TIMER) ;On lance la pause...

            If $ACTE = 1 Then ;Et enfin on lance soit un clique soit un déplacement de souris (1 = click) et (0 = mouvement)
                MouseClick("", $VALEUR_X, $VALEUR_Y, 1) ;Un click aux coordonées données
            ElseIf $ACTE = 0 Then
                MouseMove($VALEUR_X, $VALEUR_Y) ;Un mouvement aux coordonées données
            EndIf ;Fin de la condition


    EndSwitch ;Fin des Case ...
WEnd ;Fin de boucle

 
Merci de bien vouloir mettre en [R] si votre problème est résolut !!

Re: [..] Mouseclick special

Posté : mer. 10 févr. 2010 15:15
par pop45
Bon j'ai regarder sa je vois pas comment sa pourrait maider mais merci quand meme pour avoir chercher


Je met quand meme [R]parce que tlem a l'aire d'etre un peut mechant aujourdhui

P.S
Je connais mousemove mousegetpos et compagnie chuis pas le dernie des ||||||| quand même

Re: [R] Mouseclick special

Posté : mer. 10 févr. 2010 19:43
par Narmeke
Tous est dans la Doc, il suffit de chercher un minimum.
Il ne suffit pas de lire le code mais également de le comprendre afin de pouvoir l'améliorer voire même en créer un de toute pièce.

Ce que je veux dire par là c'est que vous pouvez modifier ce code pour l'adapter a vos besoins.
Par exemple pour 30 pixels plus haut, il suffit de faire position de la souris -30pixels.

Bonne continuation !