Помогите разобраться с вставлением и перемещением рисунка gif.

Vadim_23_03

Новичок
Пользователь
Апр 30, 2023
32
1
8
Здравствуйте! Помогите с кодом. Задание из книги звучит так : установите рисунок в формате gif и сделайте так чтобы он двигался по экрану. Код я составил и изображение вывелось на экран , но оно не двигается хотя его поместил в цикл . Помогите разобрать почему код не работает так как мне нужно и где я допустил ошибку

Python:
from tkinter import*
import time
tk=Tk()
canvas=Canvas(tk,width=1500,height=1500)
canvas.pack()
z1=PhotoImage(file='e:\\PUSSY.gif')
canvas.create_image(0,0,anchor=NW,image=z1)
for x in range (0,100):
    canvas.move(z1,5,0)
    tk.update()
    time.sleep(0.05)
 

4olshoy_blen

Популярный
Пользователь
Ноя 13, 2022
423
115
43
я же уже писал, что делать так: from tkinter import* не хорошо:mad:. Предущий опыт мы не учитываем значит? Тогда думай сам как решить
 
  • Мне нравится
Реакции: robisho

Vadim_23_03

Новичок
Пользователь
Апр 30, 2023
32
1
8
я же уже писал, что делать так: from tkinter import* не хорошо:mad:. Предущий опыт мы не учитываем значит? Тогда думай сам
Не совсем согласен с вами. Когда используешь tkinter в создании треугольника и перемещении его в цикле код работает корректно. Только в этот раз вместо числа - индефикатора я использую переменную picture. К примеру мы можем написать код :
canvas.create_polygon(10,10,10,50,60,35) а потом вставить в цикл create,move(1,5,0) где единица будет именно объект. Но можно при создании треугольника присвоить значение в переменную и будет тоже правильно.(x=canvas.create_polygon(10,10,10,50,60,35) ) . А затем указать переменную х вместо числа-индификатора (1) . Пример canvas.move(x,5,0). Ведь код тоже буде рабочий . Почему нельзя в качестве объекта который будет передвигать функция move использовать рисунок?
 
Последнее редактирование:

Форум IT Специалистов