在gtk.Builder.connect_signals上捕获PyGTK RuntimeWarning

时间:2010-11-29 18:23:23

标签: python gtk pygtk

gtk.Builder.connect_signals()在信号处理程序不存在时发出RuntimeWarning:

__init__.py:16: RuntimeWarning: missing handler 'on_window_destroy'
  self.builder.connect_signals(self)

如何防止它发出警告并自行处理?

我希望不打印警告(无需用户将其管道传输到/ dev / null)

注意:我不是在问这个警告意味着什么,而是如何处理警告类就好像它是一个例外,此刻,它似乎是stderr的消息是唯一的发生的事情,我在程序中对此无能为力。

1 个答案:

答案 0 :(得分:1)

您可以使用the warnings module

但是,在这种情况下,我认为检查connect_signals的返回值会更容易。来自the documentation

  

此外,如果至少有一个这样的丢失处理程序,connect_signals将返回其名称列表,否则返回值为None。