Bonjour, j'ai un problème au niveau d'un bouton qui lance le programme du clique mais aucun clique ne se produit et au deuxième appuie du bouton le programme de clique ne s'arrête pas.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
 
import tkinter as tk
from tkinter import messagebox
import pyautogui
 
# Creation de la fenetre
Fenetre_Principale = tk.Tk()
Fenetre_Principale.title("Auto-Clicker")
Fenetre_Principale.geometry("200x100")
Fenetre_Principale.resizable(False, False)
 
# Variable global qui dit si le clique est en marche ou non
Actif = False
 
# Variable globalpour le text du boutton de click
Action = "Démarrer"
 
# Initialisation des variables
Interval_h = tk.StringVar(Fenetre_Principale, value="0")
Interval_min = tk.StringVar(Fenetre_Principale, value="0")
Interval_s = tk.StringVar(Fenetre_Principale, value="0")
Interval_ms = tk.StringVar(Fenetre_Principale, value="0")
choix_click = tk.IntVar(Fenetre_Principale, value=1)
choix_position = tk.IntVar(Fenetre_Principale, value=1)
Valeur_X = tk.StringVar(Fenetre_Principale, value="100")
Valeur_Y = tk.StringVar(Fenetre_Principale, value="100")
Touche_demarrage = tk.StringVar(Fenetre_Principale, value="F6")
 
# Fonction qui change le text sur le bouton
def Update_Text_Button():
    Bouton_Start.config(text=f"{Action} ({Touche_demarrage.get()})")
 
# Fonction choix de l'action via titre boutton
def startstop():
    global Actif
    try :
        if not Actif :
            start_clicking()
        elif Actif :
            stop_clicking()
    except Exception as e:
        messagebox.showerror("Erreur", str(e))
 
# Fonction qui clique avec un temps de repos
def auto_click(Interval):
    global Actif
    global choix_click
    if Actif :
        try :
            if int(choix_click.get()) == 1:
                pyautogui.click(button="left")
                Fenetre_Principale.after(Interval, lambda: auto_click(Interval))
            elif int(choix_click.get()) == 2:
                pyautogui.click(button="right")
                Fenetre_Principale.after(Interval, lambda: auto_click(Interval))
        except Exception as e:
            messagebox.showerror("Erreur", str(e))
 
# Fonction qui clique avec un temps de repos avec positionnement du curseur
def auto_click_positionnement(Interval, x, y):
    global Actif
    if Actif :
        try :
            pyautogui.moveTo(x, y)
            if int(choix_click.get()) == 1:
                pyautogui.click(button="left")
                Fenetre_Principale.after(Interval, lambda: auto_click_positionnement(Interval, x, y))
            elif int(choix_click.get()) == 2:
                pyautogui.click(button="right")
                Fenetre_Principale.after(Interval, lambda: auto_click_positionnement(Interval, x, y))
        except Exception as e:
            messagebox.showerror("Erreur", str(e))
 
# Fonction pour démarrer l'auto-clicker
def start_clicking():
    global Actif, Action
    Actif = True
    Action = "Arrêter"
    Update_Text_Button()
    try:
        h = int(Interval_h.get()) if Interval_h.get().isdigit() else 0
        m = int(Interval_min.get()) if Interval_min.get().isdigit() else 0
        s = int(Interval_s.get()) if Interval_s.get().isdigit() else 0
        ms = int(Interval_ms.get()) if Interval_ms.get().isdigit() else 0
        Interval = h * 3600000 + m * 60000 + s * 1000 + ms
        if Interval == 0:
            Interval = 1000
    except Exception as e:
        messagebox.showerror("Erreur", str(e))
    if choix_position.get() == 1:
        auto_click(Interval)
    elif choix_position.get() == 2:
        x = int(Valeur_X.get())
        y = int(Valeur_Y.get())
        auto_click_positionnement(Interval, x, y)
 
# Fonction pour arrêter l'auto-clicker
def stop_clicking():
    global Actif
    Actif = False
    Action = "Démarrer"
    Update_Text_Button()
 
# Interface
Bouton_Start = tk.Button(Fenetre_Principale, text=f"{Action} ({Touche_demarrage.get()})", command=startstop)
Bouton_Start.pack()
 
# Lancement de la boucle principale Tkinter
Fenetre_Principale.mainloop()
J'ai reproduit le problème avec cette partie de mon code mais je peu fournir le code complet au besoin. Merci du temps que vous m'aurez accordé
(Suite de l'ancienne discussion : https://www.developpez.net/forums/d2...yautogui-time/)