簡體   English   中英

沒有Gtk.main()的窗口不會在GTK3中的python解釋器中顯示

[英]Window doesn't show in python interpreter in GTK3 without Gtk.main()

在GTK2中,我喜歡在翻譯器(ipython或普通python)中“動態”構建一個gui,並實時看到這些變化:

>>> 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

我嘗試使用以下單行處理待處理事件:

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

它看起來有相同的行為。 這不太方便,但你仍然可以在翻譯中做一些工作。

或者,如果您正在開發Gtk應用程序, pdb.set_trace仍然可以工作,並允許您調試回調,如果這是您正在尋找的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM