日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

QT5知识:装饰器@pyqtSlot和槽和信号

發(fā)布時間:2025/3/21 73 豆豆
生活随笔 收集整理的這篇文章主要介紹了 QT5知识:装饰器@pyqtSlot和槽和信号 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、定義槽的格式

1

2

3

@PyQt5.QtCore.pyqtSlot(參數(shù))

def on_發(fā)送者對象名稱_發(fā)射信號名稱(self,參數(shù)):

?pass

2、注意點,使用裝飾器必須定義兩個東西

QMetaObject.connectSlotsByName(self)

給需要綁定事件的定義一個id(self.btn.setObjectName('名稱'))

3、按鈕的普通事件

如果普通事件,則程序如下:

class Window(QWidget):def __init__(self, *args, **kwargs):super().__init__(*args, **kwargs)self.setWindowTitle('裝飾器信號與槽')self.resize(500, 500)self.move(400, 200)self.btn = QPushButton('按鈕', self)self.init_ui()def init_ui(self):self.btn.clicked.connect(self.btn_hand)@staticmethoddef btn_hand():print('使用connect點擊了按鈕')

4、使用裝飾器后的事件

from PyQt5.QtWidgets import QMainWindow, QPushButton, QWidget, QMessageBox, QApplication, QHBoxLayout from PyQt5.QtCore import QMetaObject,pyqtSlot import sysclass Window(QWidget):def __init__(self, *args, **kwargs):super().__init__(*args, **kwargs)self.setWindowTitle('裝飾器信號與槽')self.resize(500, 500)self.move(400, 200)self.btn = QPushButton('按鈕', self)self.init_ui()# 要在加載組件后使用QMetaObject.connectSlotsByName(self)def init_ui(self):# 這個地方定義的名字直接在下面使用self.btn.setObjectName('btn')@pyqtSlot()def on_btn_clicked(self):print('使用裝飾器點擊了按鈕') if __name__ == "__main__":app = QApplication(sys.argv)form = Window()form.show()sys.exit(app.exec_())

python GUI庫圖形界面開發(fā)之PyQt5信號與槽基礎(chǔ)使用方法與實例_python_腳本之家 (jb51.net)

總結(jié)

以上是生活随笔為你收集整理的QT5知识:装饰器@pyqtSlot和槽和信号的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。