from PyQt4.QtCore import *
from PyQt4.QtGui import *
import sys
class Foo(QLineEdit):
def keyPressEvent(self, event):
print 'Foo keyPress', event.key(); sys.stdout.flush()
QLineEdit.keyPressEvent(self, event)
app = QApplication([])
window = QMainWindow()
f = Foo()
window.setCentralWidget(f)
window.show()
def do_action():
print 'action'; sys.stdout.flush()
action1 = QAction('Action 1', f, triggered=do_action)
action1.setShortcut(Qt.CTRL + Qt.Key_Z)
action1.setShortcutContext(Qt.WidgetShortcut)
For actions that should work all over the mainwindow, you should use
Qt.WidgetWithChildren here.
Oops, that line was an artifact of an earlier experiment. I actually
tried every possible value for shortcutContext, none of them seem to
make a difference.
_______________________________________________
PyQt mailing list PyQt@riverbankcomputing.com
http://www.riverbankcomputing.com/mailman/listinfo/pyqt