Pyqt5 klavyede tuşlara basmayı algılama

Sınıfı şundan sordum. Sizin çağırdığınız kısım öncesinde yapılması gereken bir şeyler varsa çağırdığınız kısım doğru çalışmamış olabilir.

Bir de buton olayını takip ettiğiniz, butona bastığınızda çalışan kodu görebilir miyiz?

Burada windoww.startt doğru giriş noktanız olmayabilir.

Doğru noktayı bulabilmek için sınıf yapınızı ve buton olayını nasıl işlediğinizi de görmekte fayda var.

EDIT:

Sebebi de şu:

Sizin hotkey için bir mesaj işleme kuyruğuna bağlanmanız gerekiyor.

Ve nasıl bağlayacağımız kodunuza bağlı.

Siz örnek verin ben hallederim derseniz.

from PyQt5.QtWidgets import QAction, QApplication, QMainWindow, QMenu


class KeyBoardManager(QObject):
    F1Signal = pyqtSignal()

    def start(self):
        keyboard.add_hotkey("F1", self.F1Signal.emit, suppress=True)


class MainWindow(QMainWindow):
    def __init__(self):
        super(MainWindow, self).__init__(flags=Qt.WindowStaysOnTopHint)

        self.menu = QMenu("Menu")
        self.menu.addAction(QAction("menu1", self.menu))
        self.menu.addAction(QAction("menu2", self.menu))
        self.menu.addAction(QAction("menu3", self.menu))

        manager = KeyBoardManager(self)
        manager.F1Signal.connect(self.show_menu)
        manager.start()

    def show_menu(self):
        print("111")
        self.menu.popup(QCursor.pos())
        print("222")


if __name__ == "__main__":
    app = QApplication(sys.argv)
    app.setQuitOnLastWindowClosed(False)
    win = MainWindow()
    # win.show()
    sys.exit(app.exec_())

Burada ana pencere yok. F1 Tuşuna bastığınızda;

Herhangi bir yere menü açıyor.

Menü çağrınızı işliyor.

Yani menü çağrınıza bağlamış oluyorsunuz.

printlere takılmayın, bunlar menü çağrısı içinde sizin kodunuz varsayın.

python - How to show a QMenu using global keyboard shortcut in PyQt5? - Stack Overflow

        manager = KeyBoardManager(self)
        manager.F1Signal.connect(self.show_menu)
        manager.start()

kısmı size bir bağlantı sunar.

Ama söylediğim gibi her şey sizin kodunuzun çalışma mekanizmasına bağlı.