Page 1 of 1

Clic + décalage dans une boucle

Posted: 17 Feb 2020, 19:14
by Ted62
Bonjour à tous,

J'ai crée une boucle qui fait 2-3 actions, la première action est un clic qui me donne le point de départ.

J'aimerai pouvoir cliquer 2 cm à gauche à chaque nouveau tour de boucle.

Premier tour: point de départ (point 1)
2éme tour: le clic se fera à 2 cm du point de départ (point 2)
3éme tour: le clic se fera à 2 cm du point 2 soit 4 cm du point 1

C'est certainement basique mais je bloque dessus. Auriez-vous une idée?

Re: Clic + décalage dans une boucle

Posted: 18 Feb 2020, 09:35
by francois
En pièce jointe un script où il y a décalage puis clic.

Avant une premiere utilisation :
  • Ouvrir a.htm et refaire les images 0.jpg et 1.jpg pour les adapter à votre PC
  • Indiquer dans la 1ere action le chemin du fichier

Code: Select all

IMG_a_trouver_1 = new Image("C:/temp/toto/1.jpg")
puis :
  • Ouvrir a.htm avant de lancer le script
clic_apres_deplacement.zip
(3.5 KiB) Downloaded 155 times

Re: Clic + décalage dans une boucle

Posted: 18 Feb 2020, 10:42
by Ted62
Le script trouve l'image, il récupère les coordonnées du clic et il décale le prochain clic.

Somme-nous obligé de trouver une image pour faire la suite? Ne peut-on pas utiliser les coordonnées du point de départ?

J'ai réalisé un petit script en fonction de ce que tu nous a donné. Les 3 clics se font à merveille, mais comment puis-je faire pour y ajouter la boucle (n+1)?

Code: Select all

decalage_X  =  - 70
decalage_Y  = 0

var souris=new Mouse()

X = 1180
Y  = 142

var pt_clic = new Point( X,  Y);
souris.move(pt_clic);
souris.click();

Execution.pause(1000) // pour voir ce qui se passe.


var pt_clic = new Point( X + decalage_X ,  Y + decalage_Y);
souris.move(pt_clic);
souris.click();

Execution.pause(1500) // pour voir se qui se passe.


X1 = X + decalage_X;
Y1 = Y + decalage_Y;

var pt_clic2 = new Point( X1 + decalage_X ,  Y1 + decalage_Y);
souris.move(pt_clic2);
souris.click();
Execution.pause(2000) // pour voir se qui se passe.[code]

Re: Clic + décalage dans une boucle

Posted: 18 Feb 2020, 13:08
by francois
Une solution :

Code: Select all

//==============
X = 1180
Y  = 142

decalage_X  =  - 10
decalage_Y  = 0

nb_boucles = 5

var souris=new Mouse()
//==============

for (i=0;i<nb_boucles;i++){

       Console.print(X + " " + Y)  

	var pt_clic = new Point( X,  Y);
	souris.move(pt_clic);
	souris.click();

        Execution.pause(1000) // pour voir ce qui se passe.

       X = X+decalage_X
       Y = Y+decalage_Y
}