python - 在 gtk.Builder.connect_signals 上捕获 PyGTK RuntimeWarning

标签 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 的消息是唯一的发生的事情,我无法在程序中做太多事情。

最佳答案

您可以使用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/

相关文章:

python - 使用 xpath 获取当前元素内的元素

python - 你如何在 Python 中输入转义序列?

python - 如何在 Windows 中使用 2to3 工具?

python - 当两个异步任务访问同一个可等待对象时是否安全?

c - 来自 gdk_window_get_frame_clock 的 SIGABRT 信号

gtk - Libtool 认为是 "library was moved"但事实并非如此

c++ - Qt/Gtk+ 是否允许同时使用两种语言进行编程?

python - 按钮停止/取消子进程 PYGTK 中的进度条

python - 通过使用鼠标调整对话框大小来调整子窗口小部件的大小

python - PyGTK TreeView 中的粗体/非粗体行