[英]How can I intercept/redirect a keystroke in PySide/Qt
我正在用PySide / Qt編寫一個簡單的應用程序。 我想要一個應用程序范圍內的快捷方式,它將捕獲特定的擊鍵(Page Down)並將其發送到特定的小部件(textEdit)。
換句話說,如果有人按下Page Down鍵,則我想滾動textEdit(只讀)中的文本。
我不知道如何實現這一目標。 任何幫助/提示將不勝感激!
提前致謝!
這是我的解決方案:
self.pgdwn = QShortcut(self)
self.pgdwn.setKey(QKeySequence(Qt.Key_Down))
self.pgdwn.activated.connect(lambda: self.on_page_down())
def on_page_down(self):
self.sendkeys(Qt.Key_PageDown)
def sendkeys(self, char, modifier=Qt.NoModifier):
event = QKeyEvent(QEvent.KeyPress, char, modifier)
QCoreApplication.sendEvent(self.textEdit, event)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.