[R] Aide pour 2 timer dans un script

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
cortx
Niveau 5
Niveau 5
Messages : 115
Enregistré le : dim. 04 mai 2008 16:10
Status : Hors ligne

[R] Aide pour 2 timer dans un script

#1

Message par cortx »

Bonjour;

J'ai développé un script qui scan les couleurs d'une page internet et si un pixel est jaune le pc emet un bip.
Si il n'y a rien, le script effectue une pause de 60 secondes et recommence sa détection.

Jusque là pas de problème.

Le souci que j'ai c'est que je dois insérer une autre fonction de pause mais qui elle est beaucoup plus longue que 1 minutes.
Je dois insérer une pause d'une demi heure et faire un rafraichissement d'écran.

Code : Tout sélectionner

Sleep ( 30000 )
Send ( "{F5}" )
 
Je ne vois pas du tout comment insérer un sleep de 30 minutes sans mettre en pause tout le reste de mon script qui doit quant même continuer sa détection toutes les 60 secondes.

Voici mon script réduit à son état basique pour pas mettre de trucs inutiles.

Code : Tout sélectionner


HotKeySet( "{PAUSE}", "fonction_start" )
HotKeySet( "!{PAUSE}", "fonction_quit" )

fonction_start()

;--------------------

Func fonction_start()

    ToolTip( '', 0, 0 )
    HotKeySet( "{PAUSE}" )
    HotKeySet( "{PAUSE}", "fonction_pause" )
    
    While 1
        
        $position_pixel_jaune = PixelSearch( 30, 295, 1196, 421, 0xFFFF00 ) 
            If Not @error Then
                MouseMove( $position_pixel_jaune[0], $position_pixel_jaune[1] )
                
                                  ; pause et revérification de la couleur à l'endroit scanné pour voir si la couleur est toujours là
                                  sleep ( 3000 )
                
                If PixelGetColor ( $position_pixel_jaune[0], $position_pixel_jaune[1] ) = 0xFFFF00 Then
                    fonction_difference_pixel( $position_pixel_jaune )
                EndIf
            
            EndIf
        
        Sleep ( 60000 )

    Wend
    
EndFunc

;--------------------

Func fonction_difference_pixel( $position_pixel )

    Beep ( 200 , 100 )
    Beep ( 400 , 100 )
    Beep ( 600 , 100 )
    Beep ( 800 , 100 )
    Beep ( 1000 , 100 )
    
EndFunc


;--------------------

Func fonction_pause()
    
    ToolTip( 'Appuyez sur la touche "Pause" pour reprendre ou "Alt+Pause" pour l''arrêter complètement.',0,0,'Module de surveillance des couleurs suspendue.',2 )
    HotKeySet( "{PAUSE}" )
    HotKeySet( "{PAUSE}", "fonction_start" )
    
    While 1
    ; Ce sleep sert à remettre le script en route en cas d'oublie de retrait de la pause
    sleep (3600000) 
    send ("{PAUSE}")
    WEnd
    
EndFunc

;--------------------

Func fonction_quit()
    
    Exit

EndFunc


 

Merci à vous
GaRydelaMer
Niveau 7
Niveau 7
Messages : 450
Enregistré le : mer. 18 mars 2009 22:12
Localisation : Montpellier
Status : Hors ligne

Re: Aide pour 2 timer dans un script

#2

Message par GaRydelaMer »

Bonjour

jette un œil dans la doc sur la commande AdlibEnable et son opposé AdlibDisable c'est fait pour ca.
Avatar du membre
Iste
Niveau 11
Niveau 11
Messages : 1870
Enregistré le : jeu. 04 déc. 2008 14:21
Localisation : 76
Status : Hors ligne

Re: Aide pour 2 timer dans un script

#3

Message par Iste »

Ben sinon ya plus simple, a chaque pause de 1min tu incrémente une variable, une foi a 30 tu rafraichit et RAZ la variable.

Place ca avant la fin de ta bloucle

Code : Tout sélectionner

$incrementation = +1
If $incrementation = 30 Then
    Send("{F5}")
    $incrementation = 0
EndIf
Et n'oubli pas de déclarer la variable $incrementation à 0 au début du script
Signez ici
Avatar du membre
jbnh
Niveau 11
Niveau 11
Messages : 1932
Enregistré le : ven. 02 mai 2008 14:54
Localisation : Bruxelles
Status : Hors ligne

Re: Aide pour 2 timer dans un script

#4

Message par jbnh »

Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !

Merci
cortx
Niveau 5
Niveau 5
Messages : 115
Enregistré le : dim. 04 mai 2008 16:10
Status : Hors ligne

Re: Aide pour 2 timer dans un script

#5

Message par cortx »

Merci beaucoup à tous.

Désolé pour la mise en forme.
Répondre