键盘中断与python gtk?

QxQ*_*QxQ 20 python gtk try-catch python-3.x

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

所以我尝试将Gtk.main()放在一个单独的线程中,并让主线程找到键盘中断,并终止线程,但后来发现Gtk不能很好地与线程一起使用,如本文所述

我想不出让键盘中断工作的任何其他方法.这可能吗?

我正在使用python3,并希望我的程序最终成为跨平台.

eba*_*ssi 38

因为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()
Run Code Online (Sandbox Code Playgroud)


sle*_*anc 8

接受的答案对我不起作用.我通过更换Gtk.main()调用来解决它GLib.MainLoop().run(),如错误报告中所述.