2024-10-05 10:47:14 发布
网友
我有一个PyQt4图形用户界面,它可以生成几个图形。在
有些图形有它们自己的鼠标单击事件,我使用mpl连接与之交互。在
我的PyQt4主窗口有几个带有快捷方式的操作。我将以Ctrl+S为例。当QMainWindow是焦点时,一切都按预期工作。在
QMainWindow
我的问题是:当我专注于一个Matploblib图形而不是QMainWindow时,如何让诸如Ctrl+S这样的信号来触发?在
答案很简单。我觉得忽视它很愚蠢。在
您需要将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] = ''
答案很简单。我觉得忽视它很愚蠢。在
您需要将QAction的shortcutContext设置为Application Shortcut,而不是Window Shortcut。另外,请禁用mpl按键事件您可以使用以下代码:
相关问题 更多 >
编程相关推荐