当信号处理程序不存在时,gtk.Builder.connect_signals() 会发出 RuntimeWarning:
__init__.py:16: RuntimeWarning: missing handler 'on_window_destroy'
self.builder.connect_signals(self)
如何防止它发出警告并自行处理?
我希望不打印警告(不需要用户将其通过管道传输到/dev/null)
注意:我不是问警告是什么意思,而是如何处理警告类型就好像它是一个异常,目前,似乎发送给 stderr 的消息是唯一的发生的事情,我无法在程序中做太多事情。
最佳答案
您可以使用the warnings
module .
但是,在这种情况下,我认为检查 connect_signals
的返回值会更容易。来自 the documentation :
Also, if there is at least one such missing handler,
connect_signals
will return a list of their names, else return value is None.
关于python - 在 gtk.Builder.connect_signals 上捕获 PyGTK RuntimeWarning,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4306760/