我有一个PyQt4 Gui,可以产生几个数字。
有些数字有自己的鼠标点击事件,我使用mpl_conect进行交互。
我的PyQt4主窗口有多个快捷键操作。我将使用 Ctrl + S 作为示例。当QMainWindow
聚焦时,一切都按预期工作。
我的问题是:当我专注于Matploblib图而不是QMainWindow
时,如何获取 Ctrl + S 等信号。
答案 0 :(得分:0)
答案结果很简单。我觉得很容易忽视它。
您需要将QAction的shortcutContext设置为Application Shortcut而不是Window Shortcut。另外,请禁用mpl键按事件,您可以使用以下代码:
mpl_keypress_shortcuts = [key for key in matplotlib.rcParams.keys() if key.find('keymap') == 0]
#for key in mpl_keypress_shortcuts:
#print('%s = %s' % (key, matplotlib.rcParams[key]))
# Disable mpl shortcuts
for key in mpl_keypress_shortcuts:
matplotlib.rcParams[key] = ''