teachme
Июль 2, 2011 17:03:41
Не запускается функция ‘timer’
import gobject
class main(object):
def __init__(self):
self.timer()
def timer(self):
gobject.timeout_add_seconds(1, self.x)
def x(self):
print 'text'
return True
main()
Запускается. Добавьте print ‘timer’ перед вызовом gobject.timeout_add_seconds - увидите сами.
teachme
Июль 2, 2011 19:12:38
Ed
Запускается. Добавьте print ‘timer’ перед вызовом gobject.timeout_add_seconds - увидите сами.
Действительно, запускается, но почему не пишет ‘text’?
Скорее всего потому что программа завершается до истечения таймаута. Поставьте time.sleep(3) после main(), может и увидите свой ‘text’.
teachme
Июль 2, 2011 20:57:01
Ed
Поставьте time.sleep(3) после main()
не помогло
Ну тогда так сделайте:
import gtk
import gobject
class main(object):
def __init__(self):
self.timer()
def timer(self):
gobject.timeout_add_seconds(1, self.x)
def x(self):
print 'text'
return True
main()
gtk.main()
teachme
Июль 2, 2011 21:48:30
Работает! Спасибо! Я думал, что для gobject.timeout_add_seconds() необходимо импортировать только модуль gobject. Скажите пожалуйста, как вы нашли решение?
Ну, я немного работал с gtk. Знаю, что там нужен gtk.main, чтобы всякие gtk-шные ивенты обрабатывать. А gobject - это из той же оперы.