ich habe vor ein paar Tagen angefangen, mich mit der Programmierung in Python (bzw. der Programmierung im Allgemeinen) zu beschäftigen, also bitte verzeiht mir meinen dilettantischen Code und mein Unwissen - aber ich bin ja hier, um zu lernen.
Ich versuche eine Anwendung zu programmieren, die meinen Screen wach hält (und ja, ich weiß, dass es hierfür bereits 1.000 Lösungen im Internet gibt, aber ich möchte verstehen, wieso meine nicht funktioniert ).
Funktion sollte wie folgt sein:
Ich klicke den Start-Button und mein Cursor soll sich alle paar Sekunden bewegen. (-> funktioniert bis hierhin auch sehr gut)
Sobald ich dann den Button "Stopp" anklicke, soll das Programm stehenbleiben und quasi darauf warten, dass ich wieder den Start-Button anklicke.
Und hier liegt scheinbar das Problem:
Ich steige wie gewollt in die Schleife ein, komme dann allerdings nicht mehr raus. Sobald ich mit der linken Maustaste auch nur irgendwas anklicke, erhält das Programm keine Rückmeldung mehr.
Klicke ich dann aus dem Fenster raus, um z.B. etwas anderes zu machen, startet sich das Programm einfach wieder selbst.
Ich komme also nur raus, indem ich das Programm abschieße.
Lange Rede, kurzer Sinn:
hier mein Übungscode:
Code: Alles auswählen
import mouse
import time
import tkinter as tk
#actions are discribed here
def actionstartbutton():
while mouse.is_pressed('left')is False:
time.sleep(0.0050)
mouse.move(960,540, absolute=True, duration=1)
time.sleep(1)
mouse.move(1000,540,absolute=True, duration=1)
time.sleep(1)
mouse.move(1000,600,absolute=True, duration=1)
time.sleep(1)
mouse.move(960,600,absolute=True, duration=1)
time.sleep(3)
def actionstoppbutton():
if mouse.is_pressed('left')is True:
window.quit()
#GUI is discribed here
window = tk.Tk()
window.geometry('600x600')
window.configure(bg='#FFCC99')
frame = tk.Frame(window, bg='#EE959E')
startbutton = tk.Button(window, text='Start',
bg='#EE959E',
width='8',
height='1',
font=('Bernardo Moda Bold',20,'bold'),
command=actionstartbutton).pack(side='bottom')
stoppbutton = tk.Button(window, text='Stopp',
bg='#EE959E',
width='8',
height='1',
font=('Bernardo Moda Bold',20,'bold'),
command=actionstoppbutton).pack(side='bottom')
window.mainloop()