如何重新显示gtk图像之后窗口。隐藏并显示?

2024-10-03 21:28:15 发布

您现在位置:Python中文网/ 问答频道 /正文

正如您在这个例子中看到的,如果我们关闭然后再次显示包含gtk.标签-标签也显示,但如果窗口包含gtk图像-我们看不见。在

import gtk,gobject

def dest(*a):
   print 1
   gobject.timeout_add(1000,dest2) 
#also, why it is impossible to show window again at once it closed?


def dest2(*a):
   print 2
   win.add(child)
   win.show_all()
   shild.queue_draw()
   print 'where is is?'

win = gtk.Window()
win.connect('delete-event', dest)
l = gtk.Label('gtk')

image=gtk.Image()
f=fopen('some_image.png','r')
loader = gtk.PixbufLoader()
loader.write(f.read())
loader.close()
f.close()
image.set_from_pixbuf(loader.get_pixbuf())

child=image
#child=l  #so, if uncomment this string - everything is perfect
win.add(child)
win.show_all()
gtk.main()

Tags: imageaddchildgtkisdefshowit
1条回答
网友
1楼 · 发布于 2024-10-03 21:28:15

@镰刀

什么是shild.queue_draw公司()? 不管怎样:

def dest2(*a):
   print 2
   image.set_from_pixbuf(loader.get_pixbuf())      # <<<   add this "and your hair will be soft and silky"
   win.add(child)
   win.show_all()
#   shild.queue_draw()
   print 'where is is?'

我的pygtk说:loader=gtk.gdk.pixBuffLoader()

#also, why it is impossible to show window again at once it closed?

您可以尝试在dest()中使用“return True”

相关问题 更多 >