Форум сайта python.su
from tkinter import * import time root = Tk() tuk = PhotoImage(file = "0011.gif") cnv = Canvas(root, height = 800, width = 700) cnv.pack() cnv.config(bg = '#CCFFFF') cnv.create_rectangle(200, 700, 350, 600, fill='red') cnv.create_rectangle(450, 700, 600, 600, fill='red') cnv.create_rectangle(350, 650, 450, 700, fill='red') cnv.create_rectangle(240, 700, 300, 650, fill='brown') cnv.create_rectangle(490, 700, 550, 650, fill='brown') cnv.create_polygon(200, 600, 275, 500, 350, 600, fill='brown') cnv.create_polygon(450, 600, 525, 500, 600, 600, fill='brown') S = cnv.create_image(50, 100, image = tuk, tag = "tuk") root.focus_force() def move_tuk(event = None): for t in range(70): time.sleep(0.1) if t < 20: cnv.move(S, 10, -10) else: cnv.move(S, 10, 10) cnv.update_idletasks() cnv.after(100, move_tuk) root.mainloop()
Отредактировано FishHook (Дек. 3, 2012 17:51:39)
Офлайн
from tkinter import * import time root = Tk() tuk = PhotoImage(file = "1.gif") cnv = Canvas(root, height = 800, width = 700, bg = '#CCFFFF') cnv.pack() cnv.create_rectangle(200, 700, 350, 600, fill='red') cnv.create_rectangle(450, 700, 600, 600, fill='red') cnv.create_rectangle(350, 650, 450, 700, fill='red') cnv.create_rectangle(240, 700, 300, 650, fill='brown') cnv.create_rectangle(490, 700, 550, 650, fill='brown') cnv.create_polygon(200, 600, 275, 500, 350, 600, fill='brown') cnv.create_polygon(450, 600, 525, 500, 600, 600, fill='brown') S = cnv.create_image(50, 100, image = tuk, tag = "tuk") root.focus_force() def move_tuk(event = None): for t in range(70): time.sleep(0.1) if t < 20: cnv.move(S, 10, -10) else: cnv["bg"] = 'black' # Изменение цвета cnv.move(S, 10, 10) cnv.update_idletasks() cnv.after(100, move_tuk) root.mainloop()
Офлайн
спасибо)но как сделать чтоб цвет менялся не во время движения картинки..а после того как закончит ?
Офлайн
В этом случае
from tkinter import * import time root = Tk() tuk = PhotoImage(file = "1.gif") cnv = Canvas(root, height = 800, width = 700, bg = '#CCFFFF') cnv.pack() cnv.create_rectangle(200, 700, 350, 600, fill='red') cnv.create_rectangle(450, 700, 600, 600, fill='red') cnv.create_rectangle(350, 650, 450, 700, fill='red') cnv.create_rectangle(240, 700, 300, 650, fill='brown') cnv.create_rectangle(490, 700, 550, 650, fill='brown') cnv.create_polygon(200, 600, 275, 500, 350, 600, fill='brown') cnv.create_polygon(450, 600, 525, 500, 600, 600, fill='brown') S = cnv.create_image(50, 100, image = tuk, tag = "tuk") root.focus_force() def move_tuk(event = None): for t in range(70): time.sleep(0.1) if t < 20: cnv.move(S, 10, -10) else: cnv.move(S, 10, 10) cnv.update_idletasks() cnv["bg"] = 'black' # Изменение цвета cnv.after(100, move_tuk) root.mainloop()
Офлайн