溫馨提示×

python qpushbutton的鍵盤事件如何響應

小樊
116
2024-09-06 14:00:33
欄目: 編程語言

要在 PyQt5 中為 QPushButton 添加鍵盤事件響應,您需要重新實現 keyPressEvent 方法。以下是一個示例:

import sys
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QPushButton

class CustomButton(QPushButton):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

    def keyPressEvent(self, event):
        print("Key pressed: ", event.key())
        # 在這里添加您想要執行的操作
        super().keyPressEvent(event)

class MainWindow(QWidget):
    def __init__(self):
        super().__init__()

        self.init_ui()

    def init_ui(self):
        self.setGeometry(300, 300, 400, 200)

        layout = QVBoxLayout()

        button1 = CustomButton("Button 1")
        button2 = CustomButton("Button 2")

        layout.addWidget(button1)
        layout.addWidget(button2)

        self.setLayout(layout)

if __name__ == "__main__":
    app = QApplication(sys.argv)
    main_window = MainWindow()
    main_window.show()
    sys.exit(app.exec_())

在這個示例中,我們創建了一個名為 CustomButton 的自定義按鈕類,該類繼承自 QPushButton。我們重寫了 keyPressEvent 方法,當用戶按下按鈕時,將打印出按下的鍵。您可以根據需要在此方法中添加其他操作。

然后,我們創建了一個包含兩個自定義按鈕的主窗口。當您運行此程序并按下按鈕時,將看到控制臺輸出按下的鍵。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女