Простым решением является использование QShortcut
, как показано ниже:
from PyQt4 import QtGui, QtCore
class Widget(QtGui.QWidget):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
lay = QtGui.QHBoxLayout(self)
combo = QtGui.QComboBox()
combo.addItems(["option1", "option2", "option3"])
lay.addWidget(combo)
lay.addWidget(QtGui.QPushButton("Press Me"))
shortcut = QtGui.QShortcut(QtGui.QKeySequence(QtCore.Qt.Key_Return), combo, activated=self.onActivated)
def onActivated(self):
print("enter pressed")
if __name__ == "__main__":
import sys
app = QtGui.QApplication(sys.argv)
w = Widget()
w.show()
sys.exit(app.exec_())