PyGTK:将窗口嵌入另一个窗口

时间:2011-02-02 04:35:28

标签: python gtk pygtk

我想在另一个窗口嵌入一个窗口,有点像这样:
编辑:删除截图,对不起!
这是一个翼影计划,并不是用GTK强硬制作的 我尝试使用插头和插座,但显然我不能在插头上放置一个gtk.Window(一个顶层窗口)。

有可能吗?如果是这样,怎么样?如果没有,你认为我应该做什么呢?

1 个答案:

答案 0 :(得分:2)

gtk.Window派生自gtk.Bin,因此它只能包含一个子项。这可以通过以下方式再次使用:

  • 加载两个窗口(例如来自Glade文件)
  • 从第二个窗口中删除子项,但保存对子项的引用
  • 在第一个窗口的某处添加孩子

第二步看起来像这样:

childWidget = secondWindow.get_child()
secondWindow.remove(childWidget)

我正在使用这种方法在我的一个PyGTK应用程序中添加插件窗口作为选项卡。这意味着主窗口和插件可以在Glade中单独设计,也可以独立实现。当然,您可以随意将子窗口小部件添加到任何位置。