如何动态刷新笔记本?
我有一个应该有各种数量的应用程序 页面根据底层模型中的数据。为了 同步笔记本的外观我想刷新它 每次在模型中添加/删除行时。
我试过这个:
...
def get_pagebox(self, label)
...
return pagebox
def _reinit(self):
for child in self.notebook.get_children():
self.notebook.remove(child)
for label in self.get_labels():
self.notebook.append(self.get_pagebox(label), label)
self.notebook.queue_draw_area(0,0,-1,-1)
...
它会删除旧页面,但无法添加新页面。可能是什么 问题以及你认为如何做到这一点?
答案 0 :(得分:4)
添加新页面后,您应该在笔记本上调用show_all()
。最初由GTK +创建的所有小部件都是隐藏的。 queue_draw_area
调用不是必需的。
答案 1 :(得分:2)
看起来很好。您是否尝试在添加小部件后在窗口小部件上显式show()
?