Форум сайта python.su
Здравствуйте! Вот есть у меня такое окно
я хочу, чтобы вот эти черные линии как бы двигались вниз, создавая иллюзию движения танка вверх
Танком я могу управлять вверх, вниз, влево, вправо. Но, я так понимаю, в то время, как я буду двигать танком, линии будут“ замораживаться”, т.е. пока я с танком не закончу, они не будут двигаться. Правильно ли я понял “однопоточность” в Тк? Как-то можно реализовать, что я хочу в Тк? За ранее спасибо
Отредактировано nickmetal (Авг. 29, 2013 22:51:00)
Офлайн
Вы хотите, чтобы танк двигался независимо от движения полос? Я все правильно понял?
Офлайн
4kpt, да, чтобы время движения танка полосы тоже двигались
Офлайн
nickmetal, напишите функции движения и запустите их в параллельных потоках. Вот пример:
from threading import Thread def fun1(): ... def fun2(): ... th1=Thread(target=fun1,args=()) th2=Thread(target=fun2,args=()) th1.start() th2.start()
Офлайн
Faer
Хочу на это глянуть :)
У Tkinter своя мультипоточность и она немножко по-другому реализована.
Попробуйте, ради интереса, написать два потока. Один поток пусть выполняет 100 раз print “Pulse” каждые 10 секунд. А в другом потоке следайте так, чтобы можно было нажимать виджет кнопку и при этом выполнялся print “Button Bind”.
Офлайн
Здесь потоки не нужны.
def after(): root.after(111,after) обновить_линии() обновить_положение _танка_по_нажатым_кнопкам() root.after(111,after)
Офлайн
sp3
Я про это и написал :)
Мы это уже обсуждали с Griffon в разделе для экспертов.
Отредактировано 4kpt (Авг. 31, 2013 10:03:31)
Офлайн