PyQt / PySide keyPressEvent 默认行为
Posted
技术标签:
【中文标题】PyQt / PySide keyPressEvent 默认行为【英文标题】:PyQt / PySide keyPressEvent default behaviour 【发布时间】:2013-09-02 14:36:48 【问题描述】:我已将 QPlainTextEdit 子类化并希望捕获某些键。如果按下的键不是其中之一,请继续使用默认行为(例如添加文本)。
这可能吗,还是我也必须编程?
例子:
def keyPressEvent(self, event):
if event.key() in [16777235, 16777237, 16777234, 16777236, 16777220]: # Up, down, left, right, return.
event.ignore()
else:
event.doDefault()
【问题讨论】:
【参考方案1】:使用超级完成:
def keyPressEvent(self, event):
if event.key() in [16777235, 16777237, 16777234, 16777236, 16777220]: # Up, down, left, right, return.
event.ignore()
else:
super(MyTextEdit, self).keyPressEvent(event)
【讨论】:
以上是关于PyQt / PySide keyPressEvent 默认行为的主要内容,如果未能解决你的问题,请参考以下文章
PyQt5 keyPressEvent 不适用于终止 App Qt Designer
Python/pyside,pyqt(pyside,pyqt optional): 控制文本选择的函数