Animationen mit TK

Fragen zu Tkinter.
Antworten
XT@ngel
User
Beiträge: 256
Registriert: Dienstag 6. August 2002, 14:36
Kontaktdaten:

Freitag 4. Oktober 2002, 12:25

Hat jemand Beispiele für Animationen in einem Canvas-Widget?
z.B Eine Linie die sich von a nach b zeichnet ?
Oder kann mir jemand erklären wie das geht?

MfG und Danke
Andreas
gast

Sonntag 8. Dezember 2002, 13:06

das buch erschienen bei galileo computing hat ein kapitel über tk. darin findetst du ein beispiel für eine animation.
Gast

Samstag 22. Februar 2003, 22:05

Hi XT@ngel
Ich hab grad 2-3 Progs geschrieben, die in Tk Kreise, Images und Rechtecke bewegen.
Vielleicht helfen die dir weiter...

Code: Alles auswählen

from Tkinter import*
from thread import*
from time import*
from random import*
from winsound import*

root=Tk()
kissen = Canvas(root, relief = SUNKEN, border = 4, width = 250, height = 250,\
                        background = "white")
kissen.pack(padx = 5, pady = 5)
kreis = kissen.create_oval(10, 10, 100, 100, fill = "Blue")

class test:
    def __init__(self, x, y):
        self.x=x
        self.y=y
    def snd(self):
        while 1:
            PlaySound("D:\Testmusic",0)
            sleep(143)
    def tt(self):
        global kreis
        while 1:
            self.x=randint(1,160)
            self.y=self.x+90
            kissen.coords(kreis,self.x, self.x, self.y, self.y)
            sleep(1)
t=test(10,100)
start_new_thread(t.tt,())
start_new_thread(t.snd,())
Es ist eigentlich ganz simpel:
Erst wird ein Fenster mit einem Canvas(Kissen) erstellt.
Dann wird ein Kreis(kreis) reingemalt
In einem neuen Thread wird eine Schleife immer und immer wieder durchlaufen. In der Schleife bestimmt ein Zufallswert die X-Koordinaten.
Die Y-Koordinaten werden mithilfe der ermittelten X-Koordinaten ausgerechnet. So bleibt der Kreis immer gleich groß.

Achso, zwischendurch wird noch ein Lied abgespielt. Ist für dich glaub ich nicht weiter von interesse. :lol:

Falls du weiter Beispiele brauchst, poste einfach.

MFG,
Florian
Antworten