LINUX.ORG.RU

Версия Python >= 2.2?

Здесь, судя по всему, получилось замыкание. Функция запомнила значения переменных на момент её определения. Можно попробовать использовать список (не кортеж!) или объект и менять его элементы (атрибуты).

Сам пока не пробовал ;).

DKorolkov
()

okey - всё получилось через объект

anonymous
()

ну тогда здесь почему не шарит rectangle <pre> #!/usr/bin/python from Tkinter import * tk = Tk(); f = Frame(tk); f.pack() c = Canvas(f, bg="blue", width=420, height=420, relief=RIDGE,borderwidth=3) c.pack(expand=1, fill=BOTH) class coordinats: x = 0 y = 0

rectangle = c.create_rectangle(coordinats.x,coordinats.y,100+coordinats.x,50,fill="yell ow")

def xxx(eval): coordinats.x+=5 coords(rectangle,coordinats.x,coordinats.y,100+coordinats.x,50) tk.title(coordinats.x) c.bind("<Button-1>",xxx) tk.update() c.pack() tk.mainloop(); #!/usr/bin/python from Tkinter import * tk = Tk(); f = Frame(tk); f.pack() c = Canvas(f, bg="blue", width=420, height=420, relief=RIDGE,borderwidth=3) c.pack(expand=1, fill=BOTH) class coordinats: x = 0 y = 0

rectangle = c.create_rectangle(coordinats.x,coordinats.y,100+coordinats.x,50,fill="yell ow")

def xxx(eval): coordinats.x+=5 coords(rectangle,coordinats.x,coordinats.y,100+coordinats.x,50) tk.title(coordinats.x) c.bind("<Button-1>",xxx) tk.update() c.pack() tk.mainloop(); </pre>

anonymous
()

2 anonymous (*) (2003-01-22 20:03:41.683)

А что должно "шарить"? Не понял, что требуется.

Ну и конечно s/yell ow/yellow/ :)

DKorolkov
()

когда я в функции пытаюсь изменить координаты rectangle def xxx(event): coords(rectangle,coordinats.x,coordinats.y,100+coordinats.x,50) tk.title(coordinats.x) он короче вообще после такой строчки даже такое не хочет делать tk.title(coordinats.x)

anonymous
()

косяк сам спарол - всё нормально

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.