#!/usr/bin/env python # -*- coding:utf-8 -*- import threading import gtk import time gtk.threads_init() class parent(threading.Thread): def __init__(self,window): self.window = window threading.Thread.__init__(self) gtk.threads_enter() self.layout = gtk.Layout() self.label = gtk.Label() gtk.threads_leave() def run(self): gtk.threads_enter() self.layout.put(self.label, 0, 0) self.label.set_text(str(time.time())) self.window.show_all() gtk.threads_leave() c = child(self.layout) c.start() c.join() print 'here' class child(threading.Thread): def __init__(self,label): threading.Thread.__init__(self) self.label = label def run(self): x = 1 while x > 10: self.label.set_text(time.time()) time.sleep(1) x = x + 1 if __name__ == '__main__': a = gtk.Window() b =parent(a) b.start() gtk.main()