将信号从matplotlib图形重定向到PyQt4 QMainWind

2024-10-05 10:47:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个PyQt4图形用户界面,它可以生成几个图形。在

有些图形有它们自己的鼠标单击事件,我使用mpl连接与之交互。在

我的PyQt4主窗口有几个带有快捷方式的操作。我将以Ctrl+S为例。当QMainWindow是焦点时,一切都按预期工作。在

我的问题是:当我专注于一个Matploblib图形而不是QMainWindow时,如何让诸如Ctrl+S这样的信号来触发?在


Tags: 图形信号事件鼠标图形用户界面mpl焦点快捷方式
1条回答
网友
1楼 · 发布于 2024-10-05 10:47:14

答案很简单。我觉得忽视它很愚蠢。在

您需要将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] = ''

相关问题 更多 >

    热门问题