pygtk.HBox添加后不重绘

时间:2012-03-19 03:54:16

标签: python pygtk

我有一个用Python编写的程序,使用PyGTK + Glade。我使用Glade创建布局,在内部,我创建了一些其他元素,包括标签列表。我有一个大小为3的VBox,这3个元素中的每一个都包含一个包含HBox的EventBox。

每个HBox都会包含一组动态变化的标签。问题是在将elemens添加到HBox之后,它没有显示任何内容或者没有重绘。

正如我所说,有一些事件/功能可以改变HBox,但是,这样的事情甚至无法发挥作用:

def __init__(self):

    self.builder = gtk.Builder()
    self.builder.add_from_file("maininterface.glade")

    self.window = self.builder.get_object("mainWindow")

    self.fila1 = self.builder.get_object("hbox1")
    self.fila2 = self.builder.get_object("hbox2")
    self.fila3 = self.builder.get_object("hbox3")

    self.window.show_all()
    lab0 = gtk.Label("XXXXXX")
    self.fila1.add(lab0) #this label is not shown

    #if I uncomment the next line, it works:
    #self.window.show_all()

显然,我遗失了一些东西,我不知道是什么。我可以在show_all()之前进行所有添加,但这只适用于初始化,程序将动态删除/添加元素。

PD:我使用了pack_end()而不是add(),但结果是一样的。

0 个答案:

没有答案