Hallo Leute
Meine Idee war in einer Schleife auf ein Canvas die einzelnen Frames nacheinander abzubilden:
http://paste.pocoo.org/show/152708/
Leider funktioniert dies nicht.
immerhin habe ich es aber geschafft, einen bestimmten Frame abzubilden.
Sobald ich daraus allerdings eine Prozedur machen passiert einfach nichts mehr.
Ich gehen davon aus, das mein Problem irgendwo beim Verstehen von Tkinter liegt....
Animation abspielenn
@Pascal: Du darfst nicht versuchen die Animation in einer eigenen Schleife laufen zu lassen. Wenn Dein Code läuft, läuft ja logischerweise die Tkinter-Hauptschleife nicht, also kann die auch die GUI nicht aktualisieren. GUI-Toolkits übernehmen normalerweise die Programmflusskontrolle und rufen Deinen Quelltext nur bei bestimmten Ereignissen auf, zum Beispiel wenn eine Schaltfläche vom Anwender gedrückt wurde. Du darfst dann *kurz* was machen und musst die Kontrolle möglichst zügig wieder an die GUI-Bibliothek zurückgeben.
Wenn Du in zeitlichen Abständen etwas machen möchtest, zum Beispiel *ein* neues Bild aus der Sequenz anzeigen, dann kannst Du das mit der `after()`-Methode auf Widgets lösen.
Wenn Du in zeitlichen Abständen etwas machen möchtest, zum Beispiel *ein* neues Bild aus der Sequenz anzeigen, dann kannst Du das mit der `after()`-Methode auf Widgets lösen.
Mit after() hatte ich es auch schon probiert:
http://paste.pocoo.org/show/152823/
ich kann mir zwar die einzelnen frames anschauen. Aber sobald ich es über eine Prozedur versuche geht´s nicht mehr
http://paste.pocoo.org/show/152823/
ich kann mir zwar die einzelnen frames anschauen. Aber sobald ich es über eine Prozedur versuche geht´s nicht mehr
Wenn ich mich recht erinnere, dann wurde hier im Forum schonmal ein Tkinter-Code gepostet, der genau das macht, was hier gesucht wird. Ich glaube es war eine Entwicklung von wuf und ich meine mich ebenfalls erinnern zu können, dass ich das seinerzeit getestet hätte und es hervorragend funktioniert hätte (das ist eigentlich immer so, wenn wuf etwas zeigt ). Kannst ja mal auf die Suche gehen ...
Danke, das hatte ich gemeint.problembär hat geschrieben:http://www.python-forum.de/topic-17433.html
@Pascal: Beim Aufruf der `after()`-Methode musst Du die Funtkion übergeben, die nach der angegebenen Zeit aufgerufen werden soll und nicht die Funktion *aufrufen*. Zusätzliche Argumente kannst Du auch an `after()` übergeben.