ich habe vor kurzem angefangen mich mit Python zu beschäftigen bzw. es zu lernen.
Normalerweise finde ich die Lösungen für meine Probleme am liebsten lebst um es zu lernen, aber manche Probleme kann man schwierig googeln wie mein momentanes.
Ich habe eine GUI erstellt und möchte nun ein Bild suchen. Das funktioniert zwar alles, aber ich kann das Programm nicht mehr stoppen. Es führt die Suche aus und während dieser 5 Sekunden Wartezeit lässt sich in dem Fenster nichts mehr anklicken und eine Ladezeit wird angezeigt. Wie kann ich es schreiben, dass die Befehle die ich durch das Fenster gebe Vorrang haben? Ich möchte, dass ich auf "Startet die Suche" klicke, damit eine Schleife starte in der das Bild gesucht wird und wenn ich erneut auf "Startet die Suche" klicke die Suche angehalten wird bzw. abgebrochen wird.
Code: Alles auswählen
import win32com.client as comclt
wsh = comclt.Dispatch("WScript.Shell")
from tkinter import *
import pyautogui
print(pyautogui.size())
import time
from python_imagesearch.imagesearch import imagesearch_loop, imagesearcharea,\
imagesearch
from random import randint
from time import sleep
def button_action():
while True:
pos = imagesearch("Check.png", 0.8)
if pos[0] != -1: pyautogui.leftClick(pos [0], pos [1], 0.8)
time.sleep(5)
fenster = Tk()
fenster.title("Erster Test")
change_button = Button(fenster, text="Suche", command=button_action)
exit_button = Button(fenster, text="Beenden", command=fenster.quit)
anweisungs_label = Label(fenster, text="Startet die Suche")
info_label = Label(fenster, text="Schließt das Programm")
fenster.geometry("450x400")
anweisungs_label.place(x = 0, y = 0, width=200, height=150)
change_button.place(x = 220, y = 65, width=200, height=20)
info_label.place(x = 100, y = 160, width=300, height=100)
exit_button.place(x = 100, y = 260, width=300, height=100)
fenster.mainloop()
Schon mal vielen Dank für eure Antworten.