Hope you do not mind ignoring part of answers, so I can figure out more why things work the way they are. This two examples work, what i do not understand is that in function display i do not have to declare root, v or x ?
---------- example 1 ---------- from tkinter import * from _thread import start_new_thread from time import sleep x=0 def weegbrug(): global x while True: x=x+1 sleep(0.5) start_new_thread(weegbrug,()) def display(): v.set(x) root.after(500, lambda:display()) root = Tk() v = StringVar() txt = Label(root, textvariable=v, width=800, height=600, bg='yellow', font=('Helvetica', 300)) txt.pack(expand=YES, fill=BOTH) root.title('Weegbrug') root.overrideredirect(1) root.geometry('%dx%d+0+0' % (root.winfo_screenwidth(), root.winfo_screenheight())) root.after(500, lambda:display()) root.mainloop() ---------- example 2 ---------- from tkinter import * from threading import Thread from time import sleep class Weegbrug(Thread): def __init__(self): self.x=0 Thread.__init__(self) def run(self): while True: self.x=self.x+1 sleep(0.5) w = Weegbrug() w.start() def display(): v.set(w.x) root.after(500, lambda:display()) root = Tk() v = StringVar() txt = Label(root, textvariable=v, width=800, height=600, bg='yellow', font=('Helvetica', 300)) txt.pack(expand=YES, fill=BOTH) root.title('Weegbrug') root.overrideredirect(1) root.geometry('%dx%d+0+0' % (root.winfo_screenwidth(), root.winfo_screenheight())) root.after(500, lambda:display()) root.mainloop() -- http://mail.python.org/mailman/listinfo/python-list