[..] Pixel color + répétition

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

[..] Pixel color + répétition

#1

Message par locos974 »

Bonjour,

Je souhaite crée un petit script permettent de repéré un pixel colore, et lorsqu'il existe qu'il clique à l'endroit du pixel.

En plus de ça, je veux que cette fonction ce répète ou attend d'avoir le pixel pour continuer la suite du script.
Si cela est possible, c'est que une fois la boucle terminer ( après avoir cliquer sur le pixel ), la boucle se relance.

Merci d'avance. Locos974.
Modifié en dernier par locos974 le ven. 10 févr. 2012 14:44, modifié 1 fois.
Cordialement Locos974.
Avatar du membre
silvere
Niveau 8
Niveau 8
Messages : 532
Enregistré le : sam. 24 sept. 2011 22:56
Status : Hors ligne

Re: [..] Pixel color + répétition

#2

Message par silvere »

Code : Tout sélectionner

Do
$pixel = PixelGetColor(-1,-1)
Until $pixel = 16777215 ; on continu si $pixel = 16777215 sinon on recommence a Do

MsgBox(0,'','la suite de ton scripte')
Quand le mensonge prend l'ascenseur, la vérité prend l'escalier. Elle met plus de temps, mais elle fini toujours par arriver.
Avatar du membre
ZDS
Membre émérite
Membre émérite
Messages : 554
Enregistré le : jeu. 10 juin 2010 10:35
Localisation : 22300 Cul-d'chouette Langue-de-vache
Status : Hors ligne

Re: [..] Pixel color + répétition

#3

Message par ZDS »

Bonjour.

@Silvere : Je pense que tu n'as rien compris à sa demande. Il demande un script qui clique automatiquement quelque part quand il trouve la couleur en question.

@Locos974 : Peut-on avoir plus d'infos sur le besoin de ce script? On est dans la section "Demande de création de Scripts", ce qui me rend un peu plus regardant et sceptique que sur les demandes d'aide générale.

A bientôt.
ZDS : Chef de projet du nAiO (logiciel AutoIt gratuit sous licence CC 4.0 BY-NC-SA)
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !
Avatar du membre
Jerome
Niveau 9
Niveau 9
Messages : 661
Enregistré le : mar. 07 avr. 2009 08:35
Localisation : Picardie
Status : Hors ligne

Re: [..] Pixel color + répétition

#4

Message par Jerome »

Coucou,


En mode vite fait :

Code : Tout sélectionner

while 1
    for $x = 0 to @DesktopWidth
        for $y = 0 to @DesktopHeight
            $pixel = PixelGetColor($x, $y)
            If $pixel = $TaCouleur Then
                MouseClick("left", $x, $y)
            EndIf
        Next
    Next
    sleep(100)
WEnd

Jérôme
Avatar du membre
PandiPanda
Membre émérite
Membre émérite
Messages : 656
Enregistré le : mar. 19 juil. 2011 14:03
Localisation : Bruxelles
Status : Hors ligne

Re: [..] Pixel color + répétition

#5

Message par PandiPanda »

Pourquoi vouloir utilisé des PixelGetColor() quand la fonction PixelSearch est la pour ca et bien plus "performante" pour cette tâche ...
► Afficher le texte
La seule moralité qui tienne dans un monde cruel est la chance. Impartiale. Équitable. Vraie
locos974
Niveau 5
Niveau 5
Messages : 187
Enregistré le : sam. 08 oct. 2011 22:07
Status : Hors ligne

Re: [..] Pixel color + répétition

#6

Message par locos974 »

Salut,

Edit : Es-possible qu'il repère différent pixel color et qu'il vérifie qu'il sont tous présent ? Une fois qu'il sont tous présent, il clique ?

A ce que j'ai compris sur le dernier message de Pandipanda ( son script ), il me semble que celui-ci me conviens. Je le teste, je met en résolu et si il y a un problème, j'interviendrais sur aide générale.

Merci à vous tous pour votre rapidité ! :wink:
Cordialement Locos974.
Chokolaa
Niveau 4
Niveau 4
Messages : 55
Enregistré le : ven. 04 nov. 2011 13:12
Status : Hors ligne

Re: [..] Pixel color + répétition

#7

Message par Chokolaa »

Salut,

Code : Tout sélectionner

Do
    Dim $zone[4] = [0, 0, @DesktopWidth, @DesktopHeight] ;la zone ou on doit rechercher le pixel
    $couleur = 0xFFFFFF ;le code de la couleur
    $PixelShearch = PixelSearch($zone[0], $zone[1], $zone[2], $zone[3], $couleur)

Until @error = 0 ; quand il trouve le pixel il arête la boucle

MouseClick("left", $PixelShearch[0], $PixelShearch[1], 1, 0)

; la suite de ton script
 
:)
Avatar du membre
Loulouw
Niveau 1
Niveau 1
Messages : 7
Enregistré le : jeu. 05 avr. 2012 18:25
Localisation : France / Meurthe et Moselle
Status : Hors ligne

Re: [..] Pixel color + répétition

#8

Message par Loulouw »

PandiPanda a écrit :Pourquoi vouloir utilisé des PixelGetColor() quand la fonction PixelSearch est la pour ca et bien plus "performante" pour cette tâche ...
► Afficher le texte
Le Sleep() a une certaine importance je trouve :S cela évite beaucoup de travail pour votre ordinateur mais un simple "Sleep(75)" suffit pas besoin de mettre 1/2 seconde ;)
.: Dans le monde il y a 10 types de personnes,
ceux qui comprennent le binaire, et les autres :.
Répondre