也許這已被問了很多次,但我找不到解決方案。PyQt:如何接收子類QWidget中的鍵盤事件?
我有一個對話框:
class PostDialog(QtGui.QDialog):
def __init__(self, parent=None):
QtGui.QDialog.__init__(self, parent)
self.ui = Ui_Dialog() #code from designer!!
self.ui.setupUi(self)
self.ui.plainTextEdit = ContentEditor()
這個對話框有從設計師QPlainTextEdit。
我需要重寫該QPlainTextEdit的keyPress和keyRelease。
所以我有子類是:
class ContentEditor(QtGui.QPlainTextEdit):
def __init__(self, parent=None):
QtGui.QPlainTextEdit.__init__(self, parent)
def keyPressEvent(self, event):
print "do something"
但ContentEditor.keyPressEvent不會被調用!爲什麼?
這工作,謝謝。你的代碼中有一些語法錯誤,但這是答案。無論如何,我不明白這是如何與子類化呢.. – apelliciari 2011-05-25 10:02:36
對不起,語法錯誤,我直接寫沒有測試... – Jeannot 2011-05-25 11:28:48