Events QKeyEvent:查找原始小部件?

Events QKeyEvent:查找原始小部件?,events,widget,pyqt4,keyboard-events,Events,Widget,Pyqt4,Keyboard Events,我有一个相当复杂的小部件结构,它表示一些对象的列表。包含的框架对一些子窗口小部件本身不处理的QKeyEvents(例如Alt+Up)作出反应。然而,当我收到这个活动时,我想知道它起源于哪里,或者 获取当前具有键盘焦点的小部件,或 获取小部件的屏幕坐标(我可以在以后转换) 我无法在这些小部件中处理QKeyEvents,因为它们对父项的功能一无所知——具体地说,Alt Up将列表中的项目上移,但项目编辑器本身并不知道它在列表中。明白了: # get focus with keyboard focus

我有一个相当复杂的小部件结构,它表示一些对象的列表。包含的框架对一些子窗口小部件本身不处理的
QKeyEvent
s(例如
Alt+Up
)作出反应。然而,当我收到这个活动时,我想知道它起源于哪里,或者

  • 获取当前具有键盘焦点的小部件,或
  • 获取小部件的屏幕坐标(我可以在以后转换) 我无法在这些小部件中处理
    QKeyEvents
    ,因为它们对父项的功能一无所知——具体地说,
    Alt Up
    将列表中的项目上移,但项目编辑器本身并不知道它在列表中。

    明白了:

    # get focus with keyboard focus
    widget=QApplication.focusWidget() 
    # use its middle position
    globPos=widget.mapToGlobal(QPoint(.5*w.width(),.5*w.height()))
    
    明白了:

    # get focus with keyboard focus
    widget=QApplication.focusWidget() 
    # use its middle position
    globPos=widget.mapToGlobal(QPoint(.5*w.width(),.5*w.height()))