python - 用python gtk键盘中断?

标签 python python-3.x gtk try-catch

所以就像问题说的那样,我试图让键盘中断在 Gtk.main() 正在进行时发生,但是,它似乎直到函数完成后才注意到键盘中断发生.

所以我尝试将 Gtk.main() 粘贴在单独的线程中,并让主线程找到键盘中断,并终止线程,但后来发现 Gtk 不能很好地与 this article 中所述的线程配合使用

我想不出任何其他方法可以让键盘中断起作用。这可能吗?

我正在使用 python3,并希望我的程序最终是跨平台的。

最佳答案

因为https://bugzilla.gnome.org/show_bug.cgi?id=622084使用 pygobject 编写的 gtk 应用程序在终端上使用 Ctrl + C 时不会自行关闭。

要解决这个问题,您可以像这样安装一个 Unix 信号处理程序:

if __name__ == '__main__':
    import signal
    signal.signal(signal.SIGINT, signal.SIG_DFL)
    your_application_main()

关于python - 用python gtk键盘中断?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16410852/

相关文章:

python - Ubuntu : error using cv2. imshow() 与 pyplot.plot()

python - (Python 3) 避免在 print(variableName,end =',' ) 结尾打印逗号

python - 如何查看程序的源代码(python)

mysql - peewee 使用 't1' 作为表而不是我的表

python - 在 Windows 中安装 Python-saml 包时出错

python-3.x - docker 错误 : FileNotFoundError: [Errno 2]

ruby - 在 Ruby 中使用 GTK3 自定义信号

user-interface - 是否有Gtk电子表格小部件

python - 我应该如何序列化 dateutil.tz.tzlocal 对象?

python - 从 BeautifulSoup 对象中删除标签