Найти - Пользователи
Полная версия: Tkinter.Canvas: не меняется значение create_text
Начало » GUI » Tkinter.Canvas: не меняется значение create_text
1
evgenyivanov
import Tkinter
from Tkinter import *
def my():
   global n    
   while 1:
       n = n +1
root = Tk()
n=1
w = Tkinter.Canvas(root, width=150, height=20)
w.pack()
w.create_text(60,5,text=n)
root.mainloop()
my()  

На экране так и остается “1”, хотя переменная в процедуре растет. пожалуйста, подскажите, как связать переменyю n с полем create_text?
ad3w
А с чего она должна расти? Вот пример часов, думаю, что разберетесь - http://stackoverflow.com/a/2401181/1113773
4kpt
Замена текста осуществляется функцией name_canvas.itemconfigure(id, text=“NEW_TEXT”), где id - ссылка на изменяемый объект: предварительно пишем - id = w.create_text(60,5, text=n).

А вообще-то по Canvas необходимо писать в раздел GUI.

P.S. Уберите двойное импортирование модулей. Это ошибка. При этом замените строку

 root = Tk() 

На строку

root = Tkinter.Tk() 
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB