Glade Ubuntu错误(Python)

时间:2017-05-28 22:04:27

标签: python ubuntu gtk glade

我正在使用Ubuntu中的glade和python进行应用程序。我使用about对话框小部件来创建一个通过下拉菜单访问的页面。当我第一次打开这个关于对话框时它工作正常。当我用' x'关闭它时在左上角它不会重新打开。我有我的'删除事件'绑定到函数close_about_window()的信号,看起来像这样。

def close_about_window(self, *args):

---- self.about_window.hide()

此外,如果有人知道"关闭"的信号。按钮位于屏幕底部的许可证和信用额度将非常感谢。

2 个答案:

答案 0 :(得分:1)

由于“关于”页面是一个对话框,因此当您运行该对话框时,可以将回调连接到响应信号,您将获得一个response_id。

你的回调主体可能是这样的:

if (response_id == Gtk.ResponseType.CANCEL || response_id == Gtk.ResponseType.DELETE_EVENT) {
    dialog.hide_on_delete ();
}

您还有Dialog 关闭信号,该信号适用于键绑定,比方说,按ESC键。

答案 1 :(得分:0)

因此问题的解决方案非常简单。我意识到对话框与窗口不同。您希望使用.run()而不是.show_all()或.show()来显示窗口。使用.run()然后在同一个函数中使用.hide()。你的open_about_dialog()函数将如下所示。

def open_about_dialog():
    self.about_dialog.run()
    self.about_dialog.hide()

就是这样,没有问题我使用构建器builder.get_object("about_dialog")从我的glade文件导入了我的对象