中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

python qpushbutton的自定義信號如何使用

小樊
84
2024-09-06 15:27:35
欄目: 編程語言

在 PyQt5 中,要創建自定義信號并在 QPushButton 上使用它們,需要先導入相關庫,然后創建一個新的信號并將其與按鈕的點擊事件(clicked)連接

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

class CustomPushButton(QPushButton):
    custom_signal = pyqtSignal()

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.clicked.connect(self.emit_custom_signal)

    def emit_custom_signal(self):
        self.custom_signal.emit()

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

    def init_ui(self):
        vbox = QVBoxLayout()

        button = CustomPushButton("Click me")
        button.custom_signal.connect(self.on_custom_signal)

        vbox.addWidget(button)
        self.setLayout(vbox)

    def on_custom_signal(self):
        print("Custom signal emitted!")

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

在這個示例中,我們首先從 QPushButton 類創建了一個名為 CustomPushButton 的子類。我們定義了一個名為 custom_signal 的自定義信號,并在按鈕被點擊時觸發它。

然后,在 MainWindow 類中,我們創建了一個 CustomPushButton 實例,并將其自定義信號連接到 on_custom_signal 方法。當按鈕被點擊時,這個方法會被調用,輸出 “Custom signal emitted!”。

0
苏尼特右旗| 平罗县| 靖宇县| 涪陵区| 西昌市| 诸城市| 上犹县| 阿荣旗| 平顶山市| 邵东县| 吉林省| 仁化县| 焉耆| 民县| 项城市| 六枝特区| 庆阳市| 高清| 娱乐| 大同县| 北票市| 太原市| 涿鹿县| 开远市| 类乌齐县| 涟源市| 汨罗市| 和林格尔县| 额济纳旗| 宜宾市| 连江县| 囊谦县| 北碚区| 抚宁县| 尉氏县| 北川| 惠州市| 元朗区| 金华市| 临武县| 南充市|