Окно не отображается в интерпретаторе python в GTK3 без Gtk.main ()

В GTK2 мне понравилось создавать gui в интерпретаторе (ipython или plain python) «на лету» и видеть изменения в реальном времени следующим образом:

>>> import gtk >>> win = gtk.Window() >>> win.connect('delete-event', gtk.main_quit) 10L >>> win.show_all() 

Это приведет к отображению окна, в которое я мог бы добавлять объекты.

Я перехожу к Gtk3 отчасти потому, что это будущее и отчасти потому, что я иногда использую Glade, который теперь является только Gtk3. То же самое с GTK3 НЕ показывает окно:

 >>> from gi.repository import Gtk >>> win = Gtk.Window() >>> win.connect('delete-event', Gtk.main_quit) 13L >>> win.show_all() 

Увы, после этой последней строки нет окна. Он не будет отображаться до тех пор, пока:

 >>> Gtk.main() 

Я даже попробовал:

 >>> win.show_now() 

Который ничего не сделал.

Любые идеи, как строить в реальном времени в GTK3?

Благодаря,

Narnie

One Solution collect form web for “Окно не отображается в интерпретаторе python в GTK3 без Gtk.main ()”

Я попытался обработать ожидающие события следующие однострочные:

 >>> while Gtk.events_pending(): Gtk.main_iteration() 

и это похоже на то же поведение. Это не очень удобно, но вы все равно можете работать в интерпретаторе.

Кроме того, если вы разрабатываете приложение Gtk, pdb.set_trace все равно будет работать и позволит вам отлаживать обратные вызовы, если это то, что вы ищете.

  • Получить цвет шрифта текущей темы GTK
  • безответственное перетаскивание в pygobject
  • Как добавить элемент в список недавно добавленных файлов GTK из Python?
  • атрибуты pango с pygobject
  • python и буфер обмена gtk3 onChange
  • Расширение от GtkBin
  • Как получить XWindow ID в GTK3?
  • Ширина метки метки Python GTK3
  • Как скрыть Gtk + FileChooserDialog в Python 3.4?
  • Потоки в Gtk python
  • PyGObject GTK + 3 - Документация?
  • Python - лучший язык программирования в мире.