我一直在使用PyGtk制作一个指示器,当按下按钮时将显示一个首选项窗口。该窗口构建一次,并在按下按钮时使用show_all()打开。然而,当第二次打开时,窗口中的小部件就消失了。是否有一种方法,我可以显示和关闭同一窗口多次?以下代码将在第一次关闭
后再现该问题#! /usr/bin/python
import gtk
def show():
window.show_all()
return True
window = gtk.Window(gtk.WINDOW_TOPLEVEL)
gtk.timeout_add(2000, show)
gtk.main()
你需要隐藏窗口而不是关闭它。
添加以下代码将在单击关闭按钮时隐藏窗口。
def hide_window(window, event):
window.hide()
return True
window.connect('delete-event', hide_window)
来自PyGTK FAQ:http://faq.pygtk.org/index.py?req=show&文件= faq10.021.htp