Canvas nach Zeit ändern

Fragen zu Tkinter.
Antworten
Philipp68
User
Beiträge: 34
Registriert: Freitag 23. Juni 2017, 10:14

Hallo,
ich habe mir einen Kreis erstellt, dessen Farbe sich für eine bestimmte Dauer ändert und dann wieder auf die ursprüngliche Farbe wechselt. Ziel ist es, dass es wie ein Blinken, mit einer bestimmten Frequenz, aussehen soll.

Code: Alles auswählen

    def green():
        myCanvas.create_oval(1, 1, 25, 25, fill="green")

    for x in range(0, 3):
        myCanvas = Canvas(f2, height=30, width=30, bg=mycolor)
        myCanvas.place(x='200', y='300')
        myCanvas.create_oval(1, 1, 25, 25, fill=mycolor)
        myCanvas.after(1000, green)
Kann das so überhaupt mit einer Schleife funktionieren?
Lg und vielen Dank!
Philipp68
User
Beiträge: 34
Registriert: Freitag 23. Juni 2017, 10:14

Habe es selbst lösen können :)

Code: Alles auswählen

    def make():
        canvas.create_oval(1, 1, 100, 100, fill="green")
        f2.after(20, unmake)

    def unmake():
        canvas.delete(ALL)
        f2.after(20, make)


    canvas = Canvas(f2, width=100, height=100, bg=mycolor)
    canvas.place(x='200', y='300')
    canvas.create_window(0, 0)

    make()
Antworten