- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在我的 Python 应用程序中使用 PyGObject
的 GLib.MainLoop()
并有一个问题。
是否可以处理 loop.run()
中引发的 Python 异常?
例如,我正在使用 GLib.MainContext.invoke_full()
调用一些函数:
import traceback, gi
from gi.repository import GLib
try:
loop = GLib.MainLoop()
def handler(self):
print('handler')
raise Exception('from handler with love')
loop.get_context().invoke_full(GLib.PRIORITY_DEFAULT, handler, None)
loop.run()
except Exception:
print('catched!')
我认为 handler()
应该在 loop.run()
中的某处调用,所以 raise Exception('from handler with love')
应该被 except Exception:
捕获。然而,它不是:
$ python test.py
handler
Traceback (most recent call last):
File "test.py", line 9, in handler
raise Exception('from handler with love')
Exception: from handler with love
似乎 handler()
在不知何处调用(从 GLib
的 C
代码调用?),但没有被捕获通过 except Exception:
.
是否有可能捕获 GLib.MainLoop.run()
中引发的所有 Python 异常?我有许多这样调用的处理程序,所以我必须添加相同的 try: ... 除了 OneException: ... exceptAnotherException: ...
包装器到每个处理程序中。
最佳答案
不,不传播异常。它被捕获并打印出来。 Python 回调中没有异常会导致循环退出。
关于python - PyGObject GLib.MainLoop() 和异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54666827/
有人可以选择使用 PyGObject 吗?我似乎无法让它在 Mac OS X 中运行。我正在尝试使用 papyon,但如果 GObject 不存在,它会失败得非常好。 最佳答案 作者:its desc
这个问题已经有答案了: 已关闭11 年前。 Possible Duplicate: How to Add an icon to an ubuntu app 我正在尝试为 PyGObject 应用程序创
我对该程序的看法:托盘中的图标,左键单击图标会打开一个带有关机、重启等按钮的窗口。 新的 Gnome 规范建议改用通知。 StatusIcon >! (Deprecated since version
我正在尝试将示例拖放示例从 pygtk FAQ 移植到 pygobject。 from gi.repository import Gtk as gtk import urllib import os
from gi.repository import Gtk, Gdk def drag_data_get_cb(widget, drag_context, selection_data, info,
如何使用 Python GTK3 和 pyGObject 获得透明光标。我在互联网上到处搜索,但找不到任何东西。我发现了很多使用像素图的例子,但我相信 pyGObject 没有像素图。我似乎找不到任何
我开始为 Gnome 编写一个小面板小程序,我希望用户能够左键单击状态图标以查看一些选项和信息,例如类似于 Gnome 3 中的声音图标,您可以通过左键单击设置音量,通过右键单击设置首选项。右键代码是
我已经为我的 GTK 项目创建了一个 Glade UI,其规范如下: True False True Titl
我有几个辅助函数用于定义特殊的 GObject。这些函数应该在 class_init 期间调用。我试图直接从 python 定义这些对象。是否可以在 PyGObject 中的类初始化期间访问类结构?
如果我在模块级别使用 .set_text() 和 .set_fraction() 方法,则全部成功。 但是如果我从函数或通过将对象发送到其他模块来执行此操作,则不会发生任何情况。 我使用格莱德。我写了
我试图让拖放在 pygobject 中运行良好,但它很慢且没有响应,90% 的时间我必须挥动我正在拖动的项目才能成功放下它,任何人都可以看到我是否做错了还是这是pygobject的错误?这是我的代码
看看这个简单的 python gobject 程序: import threading import gobject import time def f(): while True:
我尝试通过 pip 安装 pygobject pip install --user PyGObject 但我不工作: Collecting PyGObject Using cached pygob
我在 python 中有一个非常简单的应用程序,并使用 GTK3 作为 gui。我只是想为它设置一个默认图标,所以它在 Gnome-shell 中使用 Dash。 我很绝望,我不知道我做错了什么。 我
我在 python 中有一个非常简单的应用程序,并使用 GTK3 作为 gui。我只是想为它设置一个默认图标,所以它在 Gnome-shell 中使用 Dash。 我很绝望,我不知道我做错了什么。 我
我想在单击鼠标右键时有一个上下文菜单。 有一个old PyGtk-specific question关于它。但它使用了非常旧的 gtk 版本和已弃用的功能。 我不确定 PyGObject (Gtk 3
我需要在我的 Raspberry Pi 上编写一个程序,以使用 Gstreamer 从网络获取视频和音频流并播放它们。(我有两个流。一个用于视频,一个用于音频),我需要一个自定义 GUI。我点击了以下
我对使用 Glade 和 Python 3 构建 UI 有点迷茫。我制作了一个 GtkWindows,它有一个 GtkBox。 GtkBox 有一个 GtkButton 和两个 GtkPaned 对象
我正在尝试使用 PyGObject 创建自定义小部件。例如,我想创建这个 CustomButton 小部件,它在按钮中添加图像和标签(仅用于示例): #!/usr/bin/python #-*- co
我想用 pygobject 在通知中显示一个按钮。单击此按钮时应调用回调,但实际上没有,我不明白为什么。 这是我的代码: from gi.repository import Notify, Gtk c
我是一名优秀的程序员,十分优秀!