Как назначить числовые клавиши NumPad'а в keyPressEvent

Не знаю названия клавиши (key) (если она есть)

def keyPressEvent(self, e):
    if e.key() == Qt.Key_NumPad1 #как отобразить нажатие клавиш NumPad'а?

Ответы (1 шт):

Автор решения: gil9red

Цифры на numpad'e имеют такой же код как и основные цифры клавиатуры.

Попробуйте, нажимая на кнопки и смотря на код. В качестве дополнительной проверки, выводится True если была нажата 0, 1 или 2

Пример:

from PyQt5.QtWidgets import QApplication, QWidget
from PyQt5.QtGui import QKeyEvent
from PyQt5.QtCore import Qt


class MainWindow(QWidget):
    def keyPressEvent(self, event: QKeyEvent):
        super().keyPressEvent(event)

        print(event, event.key(), event.key() in [Qt.Key_0, Qt.Key_1, Qt.Key_2])


if __name__ == '__main__':
    app = QApplication([])

    mw = MainWindow()
    mw.show()

    app.exec()
→ Ссылка